vue.js 学习日记(二)

Vue组件

  • 全局注册/局部注册

  • 局部注册组件在子组件中不可用

  • 全局注册的行为必须在根Vue实例创建之前发生

  • camelCase的属性可以在组件中使用 kebab-case

  • 可以以对象的模式指定每一个 props属性的类型

  • 父级 props的更新会向下流动,反之则不行

  • 由于JavaScript对象和数组是引用传入的,所以当子组件对props的改变将会影响到父组件

  • props类型校验可以是原生构造对象的中的任意一个,也可以自定义检验类型,通过 instanceof检查

  • 对于绝大多数特性来说,外部传入的值会替换掉组件内部设置好的值,如input的type属性,但有的属性则是会进行合并,如class

  • inhertAttrs:false设置不希望根元素继承特性,可以使用 $attrs属性来设置继承的目标元素

  • v-on在设置事件监听器时,会把事件名全部转换成小写,推荐始终使用 kebab-case的事件名

  • v-model可以使用自定义组件中的 model属性自定义

  • 父组件模板的所有东西都会在父级作用域内编译,子组件的所有内容都会在子组件作用域内编译

  • 插槽( )/具名插槽( <slotname=“header">)/作用域插槽( slot/slot-scope)

  • 组件可用来缓存被切换后隐藏的组件的状态

  • $root访问根实例, $parent访问父组件实例(不推荐)

  • 父组件访问子组件,使用 $refs属性来获取设置了 ref属性的子组件

  • provide属性允许我们指定要分享给后代组件使用的方法,然后后代组件使用 inject属性来获得祖先组件分享的方法(依赖注入)

  • 事件侦听器( $emit派发的事件)

  • v-on 指令侦听
    $on 侦听一个事件
    $once 一次性侦听一个事件
    $off 停止侦听一个事件

  • 慎用递归组件,尽量避免组件的循环引用

  • 优先使用 template来定义模板,而不是 inline-template

  • $forceUpdate来强制更新view

  • 组件包含大量静态内容时,可使用 v-once来标记,缓存静态内容

作者:grain先森
链接:https://www.jianshu.com/p/6344df060a26
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值