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);