原理
其实原理很简单,就是拦截了object的get/set方法,在对数据进行set(obj.aget=18)时去重现渲染视图
实现方式有两种
- 方式1
定义了同名的get/set就相当于定义了age
为了让test不显示多余的变量,可以把_age定义在外部
- 方式2
使用这种方式完美的解决了对象内包含多余的变量的问题
实现数据到视图的绑定
这里的渲染只是一个简单的正则替换
要实现vue那么强大的功能还要自己实现一个模板引擎
实现视图到数据的绑定
这里做一个简单的input改变的事件监听
每次渲染之后都要重新添加事件,用时间委托可以实现,但是input的focus位置不能保留
可见vue内部的渲染和事件绑定肯定不是像这里demo写的那么简单,这里只是大致的原理(可能并不是这样的。。。)
以上就是vue 数据绑定的原理分析的详细内容,更多关于vue 数据绑定的资料请关注移动技术网其它相关文章!
您可能感兴趣的文章:
- vue init初始化项目后 npm run dev报错 10% building modules 1/1 modules 0 activeevents
- axios 处理 302 状态码的解决方法
- [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/feature
- react-native 在新版Xcode(10+)中运行出现的问题: node_modules/react-native/third-party/glog-0.3.4 , C compiler cannot create executables
- 使用puppeteer爬取网站并抓出404无效链接
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
网友评论