vue3.0 学习笔记 —— 基础要点

196 阅读2分钟
  1. 如何写一个自定义指令?
  2. 一个html是否能有多个vue的应用实例?
    可以,把App挂载到不同的元素上就行了
  3. 如何在状态更新后,DOM更新完成后执行某些操作或者代码?
    使用nextTick
  4. 计算属性和定义的计算方法之间有什么区别?
    计算属性在内部依赖的reactive值未发生改变的时候会直接返回上一次计算的结果的缓存数据,而定义的计算method则会在每次调用时进行一遍计算
  5. v-if和v-show的区别是什么?
    v-if会从DOM树中删除或者挂载元素/组件,v-show则是隐藏或者显示,所以如果一个组件在页面上会频繁的进行显示和隐藏,选择v-show会更合适一些,反之则v-if更好。
  6. v-if和v-for的优先级哪个更高一些?
    v-if的优先级更高一些,另外官方不建议在同一个元素上同时使用v-if和v-for指令。
  7. 代码“{{ n }}”中的n的值是从数字几到数字几?
    从数字1到数字10
  8. Vue里面有哪些事件修饰符?
    Event Modifiers
  9. v-model的作用是什么?
    是用来简化一些属性和事件的组合的,比如它替代了文本类型的input组件的input事件和value属性的组合,替代了select组件的value属性和chang事件的组合
  10. Vue生命周期
  11. deep watch和shallow watch有什么区别?
    deep watch可以监控对象内部的属性的变化,对应的需要的计算资源就更多一些,而shallow 不行,开启deep watch的方法是设置“deep: true”即可
  12. 如何在vue组件更新后调用watch?
    设置“flush: 'post'”即可
  13. watch是否可以监听计算属性?
    可以监听
  14. 在created钩子函数中是否可以访问组件的ref,为什么?
    不可以,ref是在组件挂载之后才可以访问,因为在这之前组件还不存在,所以得到的ref是null
  15. 父组件可以通过ref访问子组件的所有的属性和方法,如何限制某些方法和属性是否可以被父组件访问?
    在expose属性中设置哪些属性或者方法可以被父组件访问