用户工具

站点工具


web:vue
  • 前端的变化
曾经:查找dom(View),存取值(Model),与后台互动(*);缺点:各种代码易混乱,难维护。
现在:MV*结构有MVC、MVP、MV VM,Vue实现了等式UI=VM(State),即状态State改变会联动界面UI改变。

Vue的核心定位并不是一个框架,设计上也没有完全遵循MVVM模式,可以看到在图中只有State和View两部分, Vue的核心功能强调的是状态到界面的映射,对于代码的结构组织并不重视, 所以单纯只使用其核心功能时,它并不是一个框架,而更像一个视图模板引擎,这也是为什么Vue开发者把其命名成读音类似于view的原因。深入理解vue

vue的双向绑定是由数据劫持结合发布者-订阅者模式实现的,就是通过Object.defineProperty()来劫持对象属性的setter和getter操作,在数据变动时做你想要做的事情。

  • vue和react的区别
Vue的核心是响应式,任何数据的变化都会主动通知Watcher监听,带来的问题就是项目大了之后耗内存;改进方案是采用组件级别的划分,组件之间的变化仍通过响应式通知,组件内部的变化则通过虚拟DOM更新页面(既减少了监听量,又不至于虚拟DOM太大);模板语法是template,比如v-if和v-for等,vue3还有了DOM的静态标记(可以跳过虚拟DOM的计算)
React通过虚拟DOM的Diff计算数据变化,但计算时间>16.6ms时会感觉到卡顿;改进方案是引进时间分片概念的Fiber架构,将树形结构(很难中断)改为链表(严格按照子元素》兄弟元素》父元素,可以中断,利用空闲时间计算);模板语法是JSX,拥有全部JS的动态性,从而API比较少。
  • 环境准备:
cnpm i //下载node_modules
devServer.proxy:config.dev.proxyTable //配置路由
devServer.publicPath: config.dev.assetsPublicPath  //静态资源路径
web/vue.txt · 最后更改: 2021/10/22 09:38 由 admin