温州做网站,网页设计师专业培训,作图软件免费,wordpress底部页面在哪里20. 对 vue 设计原则的理解
1.渐进式 JavaScript 框架#xff1a;与其它大型框架不同的是#xff0c;Vue 被设计 为可以自底向上逐层应用。Vue 的核心库只关注视图层#xff0c;不仅易于上 手#xff0c;还便于与第三方库或既有项目整合。另一方面#xff0c;当与现代化的… 20. 对 vue 设计原则的理解
1.渐进式 JavaScript 框架与其它大型框架不同的是Vue 被设计 为可以自底向上逐层应用。Vue 的核心库只关注视图层不仅易于上 手还便于与第三方库或既有项目整合。另一方面当与现代化的工 具链以及各种支持类库结合使用时Vue 也完全能够为复杂的单页应 用提供驱动。
2.易用性vue 提供数据响应式、声明式模板语法和基于配置的组件 系统等核心特性。这些使我们只需要关注应用的核心业务即可只要 会写 js、html 和 css 就能轻松编写 vue 应用。
3.灵活性渐进式框架的最大优点就是灵活性如果应用足够小我 们可能仅需要 vue 核心特性即可完成功能随着应用规模不断扩大我们才可能逐渐引入路由、状态管理、vue-cli 等库和工具不管是 应用体积还是学习难度都是一个逐渐增加的平和曲线。
4.高效性超快的虚拟 DOM 和 diff算法使我们的应用拥有最佳的性能 表现。追求高效的过程还在继续vue3 中引入 Proxy 对数据响应式 改进以及编译器中对于静态内容编译的改进都会让 vue 更加高效。
21. 说一下 Vue 的生命周期
Vue 实例有⼀个完整的⽣命周期也就是从开始创建、初始化数据、编译模版、挂载 Dom - 渲染、更新 - 渲染、卸载 等⼀系列过程称这是 Vue 的⽣命周期。
1.beforeCreate创建前数据观测和初始化事件还未开始此时 data 的响应式追踪、event/watcher 都还没有被设置也就是说不 能访问到 data、computed、watch、methods 上的方法和数据。
2.created创建后 实例创建完成实例上配置的 options 包 括 data、computed、watch、methods 等都配置完成但是此时渲染 得节点还未挂载到 DOM所以不能访问到 $el 属性。
3.beforeMount挂载前在挂载开始之前被调用相关的 render 函数首次被调用。实例已完成以下的配置编译模板把 data 里面 的数据和模板生成 html。此时还没有挂载 html 到页面上。
4.mounted挂载后在 el 被新创建的 vm.$el 替换并挂载到实 例上去之后调用。实例已完成以下的配置用上面编译好的 html 内 容替换 el 属性指向的 DOM 对象。完成模板中的 html 渲染到 html 页 面中。此过程中进行 ajax 交互。
5.beforeUpdate更新前响应式数据更新时调用此时虽然响应 式数据更新了但是对应的真实 DOM 还没有被渲染。
6.updated更新后 在由于数据更改导致的虚拟 DOM 重新渲染和 打补丁之后调用。此时 DOM 已经根据响应式数据的变化更新了。调 用时组件 DOM 已经更新所以可以执行依赖于 DOM 的操作。然而 在大多数情况下应该避免在此期间更改状态因为这可能会导致更 新无限循环。该钩子在服务器端渲染期间不被调用。
7.beforeDestroy销毁前实例销毁之前调用。这一步实例仍 然完全可用this 仍能获取到实例。
8.destroyed销毁后实例销毁后调用调用后Vue 实例指示 的所有东西都会解绑定所有的事件监听器会被移除所有的子实例 也会被销毁。该钩子在服务端渲染期间不被调用。
另外还有 keep-alive 独有的生命周期分别为 activated 和
deactivated。用 keep-alive 包裹的组件在切换时不会进行销毁而 是缓存到内存中并执行 deactivated 钩子函数命中缓存渲染后会执 行 activated 钩子函数。