vue学习第5天,组件

来源:互联网 发布:截面数据是什么 编辑:程序博客网 时间:2024/06/18 03:56

1,有一些特性不用在props里边写上 可以直接在组件上写 会绑定到根元素上

2,如果模板在定义的时候已经写上了默认的属性 比如type="xxx"那么在组件被使用之后 如果在组件上再写一个同名的属性 一般会把旧的替换掉 

然而 class 和 style 属性不会被替换 而是把所有的 class 或者 style 的内容合并成一个 class 或者 style

3,自定义事件 子组件通过事件和父容器通信

4,父容器监听事件 $on(eventname)

5,子容器触发事件 $emit(eventname) 子组件和父容器 完全解耦 只是通知一下父容器

6,.native 给组件绑定原生事件 v-on:click.native="dosomething"

7,sync 修饰符 原先用在自组件修改父容器传过来的数据的时候 通知父容器改变对应的数据 但是我们不想这样做 

现在用来 通知父容器改变状态

8,自定义表单输入组件 其实是使用了v-model:这个语法糖 v-model="value" 其实是 v-bind:"value"  v-on:input="value=event.target.value"的简写

9,要使v-model生效 需要满足两个条件 1是要在props中用一个value 的prop接受数据 然后要有一个input之类的方法 能够接受value 然后将它作为新的value

10,默认的话 v-model要有value的prop属性 但是如果value已经被其它功能使用了的话 可以使用其它的属性 比如勾选框 可以使用checked

11,非父子组件之间通信 可以使用一个空的vue实例做为中转站 可以在里面监听A组件的事件 可以触发B组件的事件

12,有时候会在父组件里面使用子组件 但是这个时候父容器中已经有其它内容了 这个时候需要使用内容分发来将原有内容和现有要插入的组件合并到一起 

一半给原有内容一个叫做<slot></slot>的插槽 把原有的内容放到里面

原创粉丝点击