我希望能够创建一个 angularjs 指令,最终从元素属性创建一个 HighCharts 图。我有一个指令工作,但任何动态设置的属性都返回未定义。最后,我希望将元素上的所有属性作为参数发送到 $http 请求。
我试过使用 $observe 方法,但它似乎不起作用,我也希望属性是任何东西而不是预定义的。
看到这个小提琴: http: //jsfiddle.net/F52SF/和指令下面的代码:
myApp.directive('example', function () {
return {
restrict: 'A',
link: function (scope, element, attrs) {
console.log('Log1:', attrs.exampleId);
attrs.$observe('exampleAttr', function () {
console.log('Log2:', attrs.exampleId);
});
var data = {};
for(var i in attrs){
var t = Object.prototype.toString.call( attrs[i] );
if(t !== '[object Object]' && t != '[object Function]') data[i] = attrs[i];
}
console.log(data);
}
}
});