ExpandInterface为视图组件添加了展开/折叠功能
数据元素和视图组件通过expandable属性控制数据是否可展开/折叠
默认返回数据元素的expandable属性, 可以重载以自定义展开规则
view.isExpandable = function (data) {
return data.get("age") > 10; //只有age大于10的data可以被展开/关闭.
}
view.expand({name:"focus-ui"}); //对象
view.expand([{name:"data1"},{name:"data2"}]); //数组
view.expand(data1); //z.Data
view.expand([data1,data2]); //z.Data数组
view.expand(data1,true); //data1的祖先数据也会展开
view.collapse({name:"focus-ui"}); //对象
view.collapse([{name:"data1"},{name:"data2"}]); //数组
view.collapse(data1); //z.Data
view.collapse([data1,data2]); //z.Data数组
view.collapse(data1,true); //data1的后裔数据也会折叠
view.expandAll();
view.collapseAll();
view.isExpanded(data)
view.onExpandChange(function (evt) {
console.log(evt.type); // type: add/remove/clear/set
console.log(evt.data); // data
});
view.onExpand(function (data) {
console.log(data);
});
view.onCollapse(function (data) {
console.log(data);
});