我正在尝试将 jQuery Sparkline 引入 ng-grid 中一个单元格的每一行。该列包含数值数组数据。
Plunkr --> http://plnkr.co/edit/1eNEcx6FQWcJynlVYvFw?p=preview
我使用带有单元模板的指令来实现此目的。
单元格模板:
指令:
app.directive('ngAge', function() {
return{
restrict: 'C',
replace: true,
translude: true,
scope: {ngAgeData: '@'},
template: '<div>' +
'<div class="sparklines"></div>' +
'</div>',
link: function(scope,element,attrs){
// var arrvalue= "3386.24000,1107.04000,3418.80000,3353.68000,4232.80000,3874.64000,3483.92000,2735.04000,2474.56000,3288.56000,4395.60000,1107.04000";
//console.log(attrs.ngAgeData);
var arrvalue = attrs.ngAgeData;
var myvalues = new Array();
myvalues = arrvalue.split(",");
$('.sparklines').sparkline(myvalues);
}
}
});
我在链接函数内获取 attrs.ngAgeData 值时遇到困难。我不确定我错过了什么。请帮忙!!!
谢谢
最佳答案
使用此单元格模板:
cellTemplate: '<div age-line agedata=row.entity.age></div>'
请注意,值作为属性传递。
该指令应该是:
app.directive('ageLine', function () {
return {
restrict: 'A',
scope: { agedata: '=' },
link: function (scope, elem) {
scope.$watch('agedata', function (newval) {
elem.sparkline(scope.agedata);
});
}
};
});
另请注意,您不需要 $.,因为该元素已经是一个 jquery(lite) 对象。
这是一个正在工作的插件:http://plnkr.co/edit/oDbPp9DGFCGGZF30Bzsi?p=preview
关于angularjs - 使用 CellTemplate 和指令在 ng-grid 的单元格中使用 jQuery Sparkline,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18159347/