首页 > 代码库 > avalon数组特性(一)

avalon数组特性(一)

  avalon是国内大神开发出来的mvvm框架,相比angular更加轻亮。一开始因为项目原因,avalon是我除了jQuery之后接触的第一个框架,自然感情深厚。但是我也踩了许多avalon的坑,以此记录,不要再踩。

  首先我想说一下我在avalon数组里踩的一些坑。

  一般我们往数组里面添加新元素时,会使用push方法,然而此方法对avalon无效,看下列代码:

var vm = avalon.define({
$id:‘test‘,
arr:[]
});
setTimeout(function(){
vm.arr = [1,2,3,4,5];
console.log(vm.arr)
},1000);
setTimeout(function(){
vm.arr.push = 6;
console.log(vm.arr[5])
},2000)

  2秒后输出undefined,证明avalon添加数组不能使用push方法。查看官方文档,可以看到avalon有自己的数组方法,其中添加新元素的方法是avalon.Array.ensure



var vm = avalon.define({
$id:‘test‘,
arr:[]
});
setTimeout(function(){
vm.arr = [1,2,3,4,5];
console.log(vm.arr)
},1000);
setTimeout(function(){
avalon.Array.ensure(vm.arr,6);
console.log(vm.arr[5])
},2000)
 
 

输出6,说明可行。

avalon数组特性(一)