在项目中使用echarts时碰到了问题,将echarts封装成指令,但是页面元素时通过ng-repeat出来的,为了实现动态刷新数据,定时ajax请求数据,造成了每次页面echarts的重新绘制,页面抖动很厉害。
在今天中午睡醒后发现自己的解题思路有问题。页面只需要加载一次,在指令里面封装一个定时器,一直ajax就可以。
提供一个例子:
angular.module(‘test’)
.directive(‘synamicline’, function (
interval,
i
n
t
e
r
v
a
l
,
http) {
return {
restrict: ‘E’,
scope: {
param: ‘=’
},
template: ‘
replace: true,
link: function (scope, element, attrs) {
/ 1.初始化echarts/
/ 2.定时ajax请求/
/ 3.构建option,并赋值echarts/
});
}
}
});