-
Notifications
You must be signed in to change notification settings - Fork 1.4k
经验教训心得体会汇总
1.自0.981版,不再支持ms-each-el-index="xxx"
的写法了,想取index要用$outer,即el.$outer.$index
,就是外面的$index了。
2.日期选择插件使用注意点:
在input 上写 ms-widget="datepicker" style="position: relative;"
注意要在页面之初引用
<script src="~/Scripts/avalon.require.text.js"></script>
3.select的事件如果用ms-change="xxx"
,它要失去焦点才会触发。可改为ms-mouseleave="xxx"
,不过,总觉得这个mouseleave
有些违合感。具体例子请见:使用avalon 实现一个订座系统(注,这个例子里用的是ms-change
,是不能良好工作的。)
此例子中,最后把ms-change
改为ms-click
,可以良好地工作。
4.关于用$id取vm的注意点。对于用avalon.define定义的vm,所有的vm都放在avalon.vmodels中,可以用avalon.vmodels[$id]
来取得相应的vm;但要注意,通过ms-each
方式生成的代理vm,不能这样使用。可通过绑定的dom元素的事件回调传参解决。如:
ms-click=callback(el)
5.如何清空vm中的定义好的数组?
例如:
var model = avalon.define('xxx', function(vm){ vm.arr = [1,2,3,4] })
要清空arr有三种方式:
(1)model.arr=[]
(2)model.arr.clear()
(3)model.arr.removeAll()
不要使用model.arr.length=0
的方式;用splice
也可以,但麻烦。