vue

题目1

谈v-model的实现原理

芋头同学:

v-model 是个 语法糖,原理就是给子组件传一个pros,属性名为value,同时监听子组件的input事件,在子组件内部是可以改变绑定的属性名和监听的事件

如何实现?

  • :value获取input输入框内容
  • 监听输入框change事件
  • 事件触发时候更改数据
  • 视图 -> 数据 -> 视图

注意:@input在组件中定义是不会像原生的事件监听,而是自定义事件,也可以通过.native修饰符监听原生事件

题目2

如何理解MVVM?

model -> ViewModel -> view

数据通过 ViewModel的一系列方法实现视图的更改

芋头同学:

MVVM 是 Model-View-ViewModel 的缩写,model代表的是数据层,view代表的是视图层,viewmodel则是model层和view层的关联,负责两者之间的交互,viewmodel将model层和view层进行了双向绑定,这样让开发者可以专注于业务逻辑的开发,不需要去手动的操作dom

题目3

ajax请求应该放在created里还是mounted里

实操是都可以放的

放mounted里面会显得流程清楚

created -> mounted -> 异步发请求 -> 获取数据 -> 重新渲染