文章目录

Dojo 0.4.0已经推出了.相较上一个版本0.3.1 这次有了很多的改动和改进,终于推出了其API(实际上就是将部分对应的源代码给贴出来..对初学还是很有用的,不过还是有很多属性

和一些隐藏的方法没写出来,所以还是直接看源代码比较方便),经过了一段时间的试用,我也来总结一下经验(主要还是widget这部分)
1.这次0.4.0支持多语言了,终于看到DatePicker,validate中组件中出现中文了,真是大快人心.不过因为中文有zh_cn和zh之分,有时候会读不到相应的文件,不过自己copy一下文件

到相应的目录就没问题了.开始dojo要做大一统toolkit的路线已经一步步在展开了.
2.这次widget中多了个FilteringTable组件,比之以前简陋的SortableTable有了很多的扩展.而且在0.5.0中将取消SortableTable了,所以好好研究了

FilteringTable.FilteringTable相比SortableTable多了过滤功能,根据条件可以将数据进行过滤.还是就是FilteringTable,它将dojo.collections.Store作为它的后台数据存储容

器,如果要将json数据解析到FilteringTable,只要用FilteringTable.store.setData(data)就可以将数据直接展示到前台了,比之SortableTable的parserData和render方便了很多,

不过FilteringTable也有很多方面着实让我郁闷了一把:
(1)就是它不支持ctrl键了,如果开启了multiple,那么选一行就多了一行了..没单选了…没办法自己改了一下源代码…-..-!! 在onSelect函数中加入对e.ctrlKey的判断和

resetSelection();就可以了.
(2)当自己的数据导入FilteringTable居然不能排序,而且一选就变成全选,而且还不能取消.这一度使我想放弃FilteringTable,不过后来还是找到了解决方法,在dojo的mail list

也有人提到.就是在tbody的tr中需要有个value的属性就可以解决……如果是外部数据导入怎么办呢…不是那在初始化FilteringTable的时候不是有个valueField的属性么,以前

一直不知道这个是干吗用的,这个就是用来设 tbody中tr的value属性用的.将valueField指定为外部json的一个字段名(实际上就是为了得到一个唯一的id啦.),那么FilteringTable

就会自动将可以将json的这个字段名的值赋到tbody的tr中需要有个value的属性中,那么就可以选择和排序了.
3.其他的比如多了clock组件啊,什么的都是一些有趣的东西..下次慢慢在来介绍.

文章目录