一、如何划分组件
1.1功能模块:select,pagenation......
1.2页面区域:header,footer,nav,sidebar......
二、组件之间的调用
2.1 文件布局
App.vue ------- 项目入口
header.vue----- 组件
footer.vue ------ 组件
2.2 在App.vue中导入组件,组件必须注册了才能用
1 //引入的组件在模板直接使用 2 <header></header> 3 <footer></footer>
1 //引入组件 2 import Header from './header' 3 import Footer from './footer' 4 new Vue({ 5 data:{ 6 isShow:true 7 }, 8 //注册组件 9 components:{ 10 Header,Footer 11 } 12 })
2.3 组件之间的通信-props
父组件向子组件传值:
在子组件要用props注册接收父组件传值的属性,如'msg';
在父组件的view层通过注册的属性接收父组件传递过来值;
1 //header.vue 2 new Vue({ 3 data:{ 4 title:'父子组件通信' 5 }, 6 //在子组件注册'msg'属性 7 props:['msg'], 8 methods:{ 9 show:function(){ 10 console.log(this.msg) 11 } 12 } 13 })
1 //App.vue 2 <header msg = 'hello vue.js'></header> 3 <footer></footer>