惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 聂微东
爱范儿
爱范儿
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
大猫的无限游戏
大猫的无限游戏
MongoDB | Blog
MongoDB | Blog
A
About on SuperTechFans
M
MIT News - Artificial intelligence
V
Visual Studio Blog
云风的 BLOG
云风的 BLOG
The GitHub Blog
The GitHub Blog
Jina AI
Jina AI
P
Proofpoint News Feed
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
T
The Blog of Author Tim Ferriss
G
Google Developers Blog
宝玉的分享
宝玉的分享
Engineering at Meta
Engineering at Meta
Last Week in AI
Last Week in AI
aimingoo的专栏
aimingoo的专栏
罗磊的独立博客
N
Netflix TechBlog - Medium
人人都是产品经理
人人都是产品经理

博客园 - 吹鱼算法

自己出的一套前端笔试题 js文件获取自身的URL路径 背景图片 设置距右边距离 手机端 一个像素线解决方案 css3 div 居中 怎么布局宽度自适应的正方形 前端Mvvm QC 设计解析 前端Mvvm QC 上传了测试版 对react的几点质疑 Display: table-cell实现img、文字垂直居中 为什么我们的web前端变的越来越复杂 扔格子游戏 -webkit-overflow-scrolling:touch iosBug on 在ios下 父对象是body的时候会 不调用 动态是执行脚本 html的转码玉反转码 获取url据对路径写法 CSS 外边距合并 页面禁制选中元素的 背景变蓝的通用写法
Vue 数组封装和组件data定义为函数一些猜测
吹鱼算法 · 2018-09-02 · via 博客园 - 吹鱼算法

 数组封装

var vm={
    list:[0,1]
}
var push=vm.list.push;//把数组原来的方法存起来
vm.list.push=function(arg){//重新定义数组的push方法
    push.call(this,arg);//调用老的push方法
    console.log('数组增加项');//执行其他相关的程序
}

   这里实际上新的push方法应该是放在__proto__里,上面这么写是方便理解

  上面我定义了一个简单的push方法,在数组初始化的时候 用新定义的方法代替了数组原有方法,从而实现对数组操作的封装

组件data定义

var component1={
     data:{
       name:'test'
    }
}
var component2={
     data:function(){
       name:'test'
    }
}

var vm1.xxx=component1.data;//引用
var vm2.xxx=component1.data();//复制

  组件的data一般是不能引用的,因为一个页面可能有好几个改类型的组件

  定义为函数,可以更方面每个组件的data初始化

  最近在使用Vue,在使用的过程中,慢慢对Vue的设计原理有了一些猜想,这个系列的文章就是阐述这些猜想,这些猜想并不是阅读源码的结果,纯粹是使用过程中的猜测,这个系列的文章会陆续更新,主要是用来和大家讨论Vue的实现。要研究Vue的实现,并不是每个人都适合直接看源码的,只是我不太适合直接看源码,我还是喜欢用了后,自己先在脑海里里YY一下,能都YY的差不多了,再去对照源码验证自己的猜想:)