一.组件化

模块化就是将系统功能分离成独立的功能部分的方法,一般指的是单个的某一种东西,例如js、css而组件化针对的是页面中的整个完整的功能模块划分,组件是一个html、css、js、image等外链资源,这些部分组成的一个聚合体

优点

代码复用,便于维护

原则

划分组件的原则:复用率高的,独立性强的

特性

组件应该拥有的特性:可组合,可重用,可测试,可维护

二.组件

也就是说Vue实例和组件的实例有差别但是差别不大,因为毕竟一个是父类一个是子类一般的应用,会拥有一个根实例,在根实例里面嵌套一个一个的组件组件可以互相嵌套,而且,所有的组件最外层必须有一个根实例,组件分为:全局组件和局部组件全局组件在任意的实例、父级组件中都能使用,局部组件只能在创建自己的父级组件或者实例中使用

全局注册

  1. Vue.component('hello',{
  2. template:"<h1>hello</h1>"
  3. })

template模板

组件通过template来确定自己的模板,template里的模板必须有根节点,标签必须闭合

组件挂载

组件的属性挂载通过:data方法来返回一个对象作为组件的属性,这样做的目的是为了每一个组件实例都拥有独立的data属性

局部注册

  1. components:{
  2. 'hello':{
  3. template:"<h1>asdasdasdasdasdas</h1>"
  4. }
  5. }

在实例或者组件中注册另一个组件,这个时候,被注册的组件只能在注册它的实例或组件的模板中使用,一个组件可以被多个组件或实例注册