第7课:vue组件

1.谈谈你对组件的理解

提高代码的可复用性

2.分别写出如何全局注册和局部注册组件

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>全局注册组件和局部注册组件</title>
  <style>
    p{
      margin-bottom: 0;
    }
    #app{
      margin-bottom: 20px;
    }
    #app .jubu{
      color: rgb(228, 26, 184);
    }
    .quanju{
      color: rgb(73, 228, 26);
    }
  </style>
</head>
<body>
  <div id="app">
    id为app的内容
    <p>此处全局注册组件</p>
    <my-component></my-component>

    <p>此处局部注册组件</p>
    <app-component></app-component>
    <p>table中只能有tr,td,tbody这些属性</p>
    <table>
      <tbody is="my-component"></tbody>
      <tbody is="app-component"></tbody>
    </table>
  </div>
  <hr>
  <div id="bpp">
    id为bpp的内容
    <p>此处全局注册组件</p>
    <my-component></my-component>

    <p>此处app局部注册组件不生效</p>
    <app-component></app-component>
  </div>

  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  <script>
    Vue.component('my-component',{
      template:'<div class="quanju">我是全局注册的组件</div>'
    })

    var app = new Vue({
      el:'#app',
      data:{

      },
      components:{
        'app-component':{
          template: '<div class="jubu">我是局部注册组件的内容</div>'
        }
      }
    })

    var bpp = new Vue({
      el:'#bpp',
      data:{

      },
    })
    
  </script>
</body>
</html>

效果

3.请写出一个父组件给子组件传递信息的demo

代码
效果

4.请写出一个子组件给父组件传递信息的demo

自定义事件:
代码
效果

v-model:
代码
效果

5.请写出一个非父子组件之间传值的demo

全局组件传递信息:
代码
效果

局部组件传递信息:
代码
效果

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,039评论 3 119
  • 因为昨天梦有点迟到所以今天早上我们很早就出发了,这一次梦自己就急了,谁让她平时不着急来,吃一堑长一智的道理我...
    冰是睡着的水_6af7阅读 721评论 0 0
  • 上班不想点外卖,所以很多人选择自己做便当。小九也是便当族,那么怎么选择健康的便当食材,怎样放心带饭呢? ...
    九珍堂阅读 2,118评论 0 0
  • 每一颗草粒都怀有不安分的梦,任风如何蛊惑,宿命里、离不开土 。 在我们的国度里,总有一些地方,他们就像...
    不尽长安阅读 1,898评论 0 3