做web前端开发,怎能没用过vue?用vue做开发,怎能不用到 vue component组件? 下面我们就是在初次使用vue来开发项目的时候,容易踩到的几个坑,汇总供大家学习和参考。
component 使用
component的注册
1.全局注册
使用用Vue.component(‘componentName’,{template:’<div>hello world</div>’})在初始化实例之前。
componentName自定义名称
在实例声明的作用域下中使用<componentName></componentName> 成功渲染效果就是 ‘<div>hello world</div>
Vue.component(‘my-component’,{ | |
template:’<div>hello world</div>’ | |
} |
组件中的数据使用
component不能使用实例的data ,但是可以在component 使用data 声明变量,data的使用只能使用函数形式
Vue.component(‘my-component’,{ | |
template:’<div>hello world {{comdata}}</div>’, | |
data:function(){return {comdata:’hehe’}} | |
}); |
2.局部主持
在实例化的new Vue 中设置components
var app=new Vue({ | |
el:’ | |
components:{‘example’:{template:’<div>children template</div>’}} | |
}) | |
组件中的数据使用 | |
var app=new Vue({ | |
el:’ | |
data:{num:220}, | |
components:{ | |
‘example’:{ | |
template:’<div>children template{{mydata}}</div>’, | |
data:function(){return {mydata:’ mydata=data’};} | |
} | |
} | |
}) |
注意:组件不能使用实例的data:{num:220}的参数会报错
组件中同样支持methods、computed等其他属性 不会冲突保持相对的独立
这时候就必须考虑不同组件的数据通信问题
vue js总结来说通过props down events up 来传输数据
给父级调用数据使用props声明,给子集调用使用events来声明