- 1.什么是 MVVM?
- MVC、MVP 和 MVVM 是三种常见的软件架构设计模式,主要通过分离关注点的方式来组织代码结构,优化我们的开发效率。
- 单页应用往往一个路由页面对应一个脚本文件,一旦项目变得复杂,那么整个文件就会变得混乱。
- MVC 通过分离 Model、View 和 Controller 的方式来组织代码结构。其中 Model 负责存储页面的业务数据,View 负责页面的显示逻辑以及操作。Controller 层是 View 层和 Model 层的纽带,当用户与页面产生交互的时候,Controller 中的事件触发器就开始工作了,通过调用 Model 层,来完成对数据的修改,然后 Model 层再去通知 View 层更新。
- MVP 模式与 MVC 唯一不同的在于 Presenter 和 Controller。在 MVC 模式中我们使用观察者模式,来实现当 Model 层数据发生变化的时候,通知 View 层的更新。这样 View 层和 Model 层耦合在一起。
- MVP 使用 Presenter 来实现对 View 层和 Model 层的解耦。MVC 中的Controller 只知道 Model 的接口,因此它没有办法控制 View 层的更新,MVP 模式中,View 层的接口暴露给了 Presenter 因此我们可以在 Presenter 中将 Model 的变化和 View 的变化绑定在一起,以此来实现 View 和 Model 的同步更新。这样就实现了对 View 和 Model 的解耦。
- MVVM 模式中的 VM,指的是 ViewModel,它和 MVP 的思想其实是相同的,不过它通过双向的数据绑定,将 View 和 Model 的同步更新给自动化了。当 Model 发生变化的时候,ViewModel 就会自动更新;ViewModel 变化了,View 也会更新。这样就将 Presenter 中的工作给自动化了。
- 2.nexttick是如何实现的?
- 3.vue生命周期?
- 4.vue双向绑定原理?
- 5.什么是状态管理?什么是vuex?
- 6.vue组件通信的方式有?
- 7.VirtualDOM是什么?Diff算法原理?
前端常见面试题-简答版
最新推荐文章于 2024-05-14 17:33:16 发布