首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
vue源码
订阅
冥泪
更多收藏集
微信扫码分享
微信
新浪微博
QQ
5篇文章 · 0订阅
Vue源码: 关于vm.$delete()/Vue.use() 内部原理
vm.$delete用法见官网。 在ES6之前, JS没有提供方法来侦测到一个属性被删除了, 因此如果我们通过delete删除一个属性, Vue是侦测不到的, 因此不会触发数据响应式。 见下面的demo。 然后查看del函数位置, vue/src/core/observer/i…
Vue源码: 关于vm.$set()内部原理
关于vm.$set()用法可以看官网,这里就不赘述了。 在Vue.js里面只有data中已经存在的属性才会被Observe为响应式数据, 如果你是新增的属性是不会成为响应式数据, 因此Vue提供了一个api(vm.$set)来解决这个问题。 vm.$set()在new Vue(…
Vue源码: 关于vm.$watch()内部原理
关于vm.$watch()详细用法可以见官网。 可以看到data属性整个a对象被Observe, 只要被Observe就会有一个__ob__标示(即Observe实例), 可以看到__ob__里面有dep,前面讲过依赖(dep)都是存在Observe实例里面, subs存储的就…
Vue源码学习: 关于对Array的数据侦听
我们都知道Vue的响应式是通过Object.defineProperty来进行数据劫持。但是那是针对Object类型可以实现, 如果是数组呢? 通过set/get方式是不行的。 但是Vue作者使用了一个方式来实现Array类型的监测: 拦截器。 通过创建一个拦截器来覆盖数组本身…
Vue源码: 构造函数入口
编译器: 把template变异为Render函数。 我们如果使用vue-loader, 那么*.vue文件模板会在构建时候预编译成JS, 所以打包完成的文件实际上不需要编译器的, 只需要引入运行时版本(体积小)即可。 如果确实需要使用完整版只需要在打包工具中配置一个别名。 它…