Demo.Func = BI.inherit(BI.Widget, { props: { baseCls: "demo-func" }, render: function () { var self = this; return { type: "bi.tab", ref: function () { self.tab = this; }, single: true, cardCreator: function (v) { return { type: v }; } }; }, mounted: function () { var self = this; var items = [[{ data: [ {x: "孙林", y: 789}, {x: "金士鹏", y: 156}, {x: "张珊", y: 289}, {x: "孙阳", y: 562}, {x: "袁成洁", y: 546}, {x: "张颖", y: 218}, {x: "王伟", y: 541}, {x: "张武", y: 219}, {x: "韩文", y: 345} ], name: "测试1", stack: 1 }, { data: [ {x: "孙林", y: 789}, {x: "金士鹏", y: 156}, {x: "张珊", y: 289}, {x: "孙阳", y: 562}, {x: "袁成洁", y: 546}, {x: "张颖", y: 218}, {x: "王伟", y: 541}, {x: "张武", y: 219}, {x: "韩文", y: 345} ], name: "测试2", stack: 1 }]]; var types = ["bi.axis_chart", "bi.line_chart", "bi.bar_chart"]; var index = 0; this.tab.setSelect(types[index]); this.tab.populate(BI.deepClone(items)); this.interval = setInterval(function () { index++; if (index >= types.length) { index = 0; } self.tab.setSelect(types[index]); self.tab.populate(BI.deepClone(items)); }, 2000); }, destroyed: function () { clearInterval(this.interval); } }); BI.shortcut("demo.axis_chart", Demo.Func);