婚纱摄影网站模板之家,百度关键词推广多少钱,three.js 做的网站,苏州外贸网站建设运营前端面试题-vue-MVC和MVVM MVC和MVVMVUE常见指令v-if和v-for 为什么不建议一起使用Vue双向数据绑定原理#xff08;响应式原理#xff09;#xff08;v-model#xff09;v-if和v-show的区别 写在最先#xff0c;不知不觉更新面试题系列也一个月过去了#xff0c;在这个过… 前端面试题-vue-MVC和MVVM MVC和MVVMVUE常见指令v-if和v-for 为什么不建议一起使用Vue双向数据绑定原理响应式原理v-modelv-if和v-show的区别 写在最先不知不觉更新面试题系列也一个月过去了在这个过程中查漏补缺良多。也来到了熟悉又不太熟悉的VUE阶段。看这些八股文有用吗我感觉当然是有用的扩展自己的思维当在工作中遇到不会的东西的时候。你虽然不能完全上手但是你至少知道有这么东西存在你大概能联想到是这个东西。编程需要天赋这是毋庸置疑的但是我们也要相信任何东西都是勤能补拙的。既然不是天才那就和比大多数平凡人去更努力一点吧… 这当然枯燥但是这也很有趣
MVC和MVVM
MVC的全名是Model View Controller是模型(model-视图(view)- 控制器(controller)的缩写一种软件设计典范 1.model模型:通常模型对象负责在数据库中存取数据 2.view视图:是应用程序中处理数据显示的部分 3.Controller (控制器):是应用程序中处理用户交互的部分 MVC的思想把Controller负责将model的数据用View显示出来换句话说就是在Controller里面把Model的数据赋值给View。
MVVM新增了VM类。 1.ViewModel层做了两件事达到了数据的双向绑定一是将模型转换成视图即将后端传递的数据转换成所看到的页面。实现的方式是数据绑定。二是将试图转换为模型即将所看到的页面转换成后端的数据。实现的方式是dom事件的监听。
MVVM和MVC最大的区别就是:它实现了view和Model的自动同步也就是当Model的属性改变时我们不在需要自己动手操作DOM来改变view的显示而是改变属性后该属性对应view层显示会自动改变。
整体来看MVVM比MVC精简给和您不仅简化了业务与界面的依赖还解决了数据频繁更新的问题不用在用选择器来操作DOM元素。
VUE常见指令
指令描述v-text指令绑定的内容会被当成普通文本去执行,如果内容包含html标签不会解析v-html指令绑定的内容如果存在html标签会被解析非必要不建议使用有安全隐患v-bind用于绑定数据和元素属性 简写为:属性v-on用于绑定事件 简写为()v-model双向数据绑定v-if条件判断为真添加元素为假删除元素 配套的有v-elif v-elsev-for循环 语法为v-for“(item,idx in xxx” :keyidxv-show条件判断为真显示为假不显示v-cloack解决页面加载过慢页面上会出现{{}}的情况 页面加载完毕才会显示v-once只执行一次
v-if和v-for 为什么不建议一起使用
首选编辑器会标红其次他俩在同一个标签中使用因为解析时先解析v-for优先级高再解析 v-if(优先级低)。 如果遇到需要同时使用时可以考虑成计算属性的方式。
Vue双向数据绑定原理响应式原理v-model
原理采用数据劫持结合发布者-订阅者模式的方式通过Object.defineProperty来劫持各个属性的setter/getter 在数据变动时发布消息给订阅者触发相应监听回调。 用户看不到setter和getter但是在内部他们让VUE追踪依赖没在属性被访问和修改时通知变化。
v-if和v-show的区别
v-if在编译过程中会被转换成三元表达式条件不满足时不渲染此节点通过dom运算操作。 v-show 会被编译成指令条件不满足时控制样式讲对应的节点隐藏通过css样式. 使用场景 v-if适用于在运行时很少改变条件不需要频繁的切换使用的场景 v-show 适用于需要非常频繁的切换场景的条件