Vue.js开发技巧Vue.js专区首页投稿(暂停使用,暂停投稿)

Vue定义组件

2017-07-28  本文已影响0人  tobyDing

vue组件---组件就是一个大对象
组件 (Component) 是 Vue.js 最强大的功能之一。
组件可以扩展 HTML 元素,封装可重用的代码。
在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能。
在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展。
一、定义一个组件:
在html中使用<my-aaa></my-aaa>
自定义标签名:小写,并且包含一个短杠,实测大写不支持,,,但是可以在写HTML结构时用大写
1. 全局组件--要注册一个全局组件,使用 Vue.component(tagName, options)
(1)定义全局组件比较常用的方式
Vue.component('my-aaa',{
template:'<strong>好</strong>',
data:function(){ //组件里面放数据:data必须是函数的形式,函数必须返回一个对象(json)
return {
msg:"123456789"
};
},
methods:{ //
组件里其他的用法,和vue实例一样

                 }
             });

        (2) 定义全局组件另一种方式
             var Aaa=Vue.extend({   
                 template:'<h3>我是标题3</h3>',
                 data:function(){  //*组件里面放数据:data必须是函数的形式,函数必须返回一个对象(json)
                     return {
                        msg:"123456789"
                     };
                 },
                 methods:{  //*组件里其他的用法,和vue实例一样

                 }
             });

             Vue.component('aaa',Aaa);
    
    2. 局部组件---放到某个组件内部
         (1) 定义局部组件比较常用的方式
             var vm=new Vue({//组件内部用法同全局组件
                el:'#box',
                components:{
                    'my-aaa':{
                        template:'<h2>标题2</h2>'
                    }
                }
             });

         (2) 定义局部组件另一种方式
             var Aaa=Vue.extend({   
                 template:'<h3>我是标题3</h3>',
                 data:function(){  //*组件里面放数据:data必须是函数的形式,函数必须返回一个对象(json)
                     return {
                        msg:"123456789"
                     };
                 },
                 methods:{  //*组件里其他的用法,和vue实例一样

                 }
             });
             var vm=new Vue({
                 el:'#box',
                 data:{
                    bSign:true
                 },
                 components:{ //局部组件
                    aaa:Aaa
                 }
             });
上一篇 下一篇

猜你喜欢

热点阅读