• vue 之组件


    组件

    '''
    1.根组件:new Vue()创建的组件,一般不明确自身的模板,模板就采用挂载点
    2.局部组件: local_component = {}
    2.全局组件: Vue.component({})
    '''

    '''
    1.一个组件就是一个vue实例
    2.组件具有自身的template
    3.组件的模板只能有一个根标签
    4.子组件的data具有作用域,以达到组件的复用,每个组件的数据独有
    '''

    变量什么的关键字

    '''
    没有关键字:全局作用域
    var:没有块级,有局部作用域
    let:有块级,有局部作用域
    const:有块级,有局部作用域,是常量
    '''

     

    局部组件

    第三步
    <div id="app">
       <!--html代码不区分大小写,该名字使用子组件是不合法的命名-->
       <!--<localTag></localTag>-->
       <!--<local></local>-->

       <!--组件的复用-->
       <local-tag></local-tag>
       <local-tag></local-tag>
    </div>


    <script>
       第一步
       var localTag = {
           template: '<div class="local" style="color: orange" @click="btnAction">{{ name }}组件</div>',
           // 子组件的数据与方法由子组件自身提供
           data: function () {
               return {
                   name: '局部'
              }
          },
           methods: {
               btnAction: function () {
                   alert('你丫点我了')
              }
          }
      };
       
    第二步
       new Vue({
           el: "#app",
           components: {
               // local: localTag
               // 'local-tag':localTag
               // localTag: localTag,
               // 1.js的驼峰命名(localTag)对应的是html的连接命名(local-tag)
               // 2.key与value的变量名一致,可以简写
               localTag
          }
      });
    </script>

    全局组件

    <div id="app">
       <global-tag></global-tag>
       <global-tag></global-tag>
    </div>
    <script>
       Vue.component('global-tag', {
           template: '<div @click="btnClick">{{ name }}组件被点了{{ n }}下</div>',
           // 组件被复用一次,就会产生一个新的局部作用域,使用一套数据
           data: function(){
               return {
                   n: 0,
                   name: "全局"
              }
          },
           methods: {
               btnClick: function () {
                   this.n += 1
              }
          }
      });
       new Vue({
           el: "#app"
      })
    </script>

     

  • 相关阅读:
    无主之地1
    A+B Problem(V)
    取石子(七)
    又见拦截导弹
    【Chat】实验 -- 实现 C/C++下TCP, 服务器/客户端 "多人聊天室"
    【Echo】实验 -- 实现 C/C++下UDP, 服务器/客户端 通讯
    【Echo】实验 -- 实现 C/C++下TCP, 服务器/客户端 通讯
    对决
    重建二叉树
    花儿朵朵
  • 原文地址:https://www.cnblogs.com/tangda/p/10870614.html
Copyright © 2020-2023  润新知