什么是组件化?
- 如果我们将一个页面中所有的处理逻辑全部放在一起,处理起来就会变得非常复杂,而且不利于后续的管理以及扩展
- 但如果,我们将一个页面拆分成一个个小的功能块,每个功能块完成属于自己这部分独立的功能,那么之后整个页面的管理和维护就变得非常容易了。
Vue组件化思想
- 他提供了一种抽象,让我们可以开发出一个个独立可复用的小组件来构造我们的应用
- 任何的应用都会被抽象成一颗组件树
组件化思想的应用:
- 有了组件化的思想,我们在之后的开发中就要充分的利用它
- 尽可能的将页面拆分成一个个小的,可复用的组件
- 这样让我们的代码更加方便组织和管理,并且扩展性也更强
所以,外组件是Vue开发中,非常重要的一个篇章,要认真学习
注册组件的基本步骤
组件的使用分成三个步骤:
- 创建组件构造器
- 注册组件
- 使用组件
1.调用Vue.extend()方法创建组件构造器
2.调用Vue.component()方法注册组件
3.在Vue实例的作用范围内使用组件
<body>
<div id="app">
<!--3.使用组件-->
<my-cpn></my-cpn>
<my-cpn></my-cpn>
<my-cpn></my-cpn>
<my-cpn></my-cpn>
</div>
<script src="../js/vue.js"></script>
<script>
//1.创建组件构造器对象
const cpnC = Vue.extend({
template: `
<div>
<h2>我是标题</h2>
<p>我是内容</p>
<p>woshineirong</p>
</div>`
})
//2.注册组件
Vue.component('my-cpn', cpnC)
const app = new Vue({
el: '#app',
data: {
message: 'hello world!'
}
})
</script>
</body>
组件可以访问Vue实例数据吗?
组件是一个单独功能模块的封装
- 这个模块有属于自己的HTML模板,也应该有属性自己的数据data
Vue组件应该有自己保存数据的地方。
父子组件的通信
- 通过props向子组件传递数据
- 通过事件向父组件发送消息