01 vue3的新特征
1.组合式API. setUp作为组合函数的入口函数
2.Teleport 传送门
3.片段 template下可以有多个标签
4.用于创建自定义渲染器。我的理解是 createRenderer API可以进行跨平台。
5.单文件组件状态驱动的 CSS 变量 (<style> 中的 v-ind)
6. SFC <style scoped> 现在可以包含全局规则或只针对插槽内容的规则
7.触发组件选项 ==这个新特征还不了解
02 模板指令的更改
1.组件上 v-model 用法已更改,以替换 v-bind.sync
2.<template v-for> 和非 v-for 节点上的 key 用法已更改
3.在同一元素上使用的 v-if 和 v-for 优先级已更改 ok
4.v-bind="object" 现在排序敏感
5.v-on:event.native 修饰符已移除 ok
就是说你不可以通过native给组件注册原生事件了。
如果要给组件使用原生事件怎么办了?
Vue 现在将把它们作为原生事件监听器添加到子组件的根元素中
(除非在子组件的选项中设置了 inheritAttrs: false)。阻止原生事件的触发
emits: ['click'],这样就可以去注册原生事件了
6.v-for 中的 ref 不再注册 ref 数组
03 被移除的 API
1. keyCode 作为 v-on 修饰符的支持 ok
2. $on、$off 和 $once 实例方法 ok
bus.$on('getCheckboxStatus',(res,c) => { }) 监听事件
//取消监听'getCheckboxStatus'事件
beforeDestroy(){
bus.$off('getCheckboxStatus');
}
$once 可以给组件实例绑定一个自定义事件,
但该事件只能被触发一次,触发之后随即被移除
@click="$emit('onceHander')"
this.$once('onceHander',()=>{})
他们配合使用
3. 过滤器 (filter) ok
4. 内联模板 attribute
$children 实例 property
propsData 选项
$destroy 实例方法。用户不应再手动管理单个 Vue 组件的生命周期。
5.全局函数 set 和 delete 以及实例方法 $set 和 $delete。基于代理的变化检测已经不再需要它们了。