Javascript 如何以编程方式计算AngularJS中HTML元素(指令)的属性名?
我在AngularJS中定义了这些属性受限指令:Javascript 如何以编程方式计算AngularJS中HTML元素(指令)的属性名?,javascript,angularjs,Javascript,Angularjs,我在AngularJS中定义了这些属性受限指令: <div data-pie-chart data="..."></div> <div data-line-chart data="..."></div> <div data-column-chart data="..."></div> 我想使用ng repeat(或类似)生成以下代码: <div data-pie-chart data="[1,1,1,1,1]">
<div data-pie-chart data="..."></div>
<div data-line-chart data="..."></div>
<div data-column-chart data="..."></div>
我想使用ng repeat(或类似)生成以下代码:
<div data-pie-chart data="[1,1,1,1,1]"></div>
<div data-pie-chart data="[2,2,2,2,2]"></div>
<div data-pie-chart data="[3,3,3,3,3]"></div>
<div data-column-chart data="[4,4,4,4,4]"></div>
<div data-column-chart data="[5,5,5,5,5]"></div>
我希望有一个优雅的“angularish”代码,能够做到这一点,理想情况下不需要使用“ng开关”或“ng如果”,因为图表列表在开始时不受限制,也不知道(可以随时添加新类型的图表)
我能算出心房肌的名字吗?这样我就不需要硬编码所有的代码了?我使用外部指令和内部模板做了类似的事情。外部指令负责在已知类型后编译内部图表指令 包装器指令
.directive( 'chartWrapper', [ '$compile', function($compile){
return {
scope: { data: '=', type: '=' },
link: function($scope, elem, attrs){
var dom = '<div ' + $scope.type + ' data="' + $scope.data + '"/>'
var el = angular.element(dom)
$compile(el)($scope)
elem.append(el)
}
}
}])
指令('chartWrapper',['$compile',函数($compile){
返回{
作用域:{data:'=',类型:'='},
链接:函数($scope、elem、attrs){
var dom=''
var el=angular.element(dom)
$compile(el)($scope)
元素附加(el)
}
}
}])
我没有测试它,因为它与我自己的案例有点不同,但应该让您开始。我使用外部指令和内部模板做了类似的事情。外部指令负责在已知类型后编译内部图表指令 包装器指令
.directive( 'chartWrapper', [ '$compile', function($compile){
return {
scope: { data: '=', type: '=' },
link: function($scope, elem, attrs){
var dom = '<div ' + $scope.type + ' data="' + $scope.data + '"/>'
var el = angular.element(dom)
$compile(el)($scope)
elem.append(el)
}
}
}])
指令('chartWrapper',['$compile',函数($compile){
返回{
作用域:{data:'=',类型:'='},
链接:函数($scope、elem、attrs){
var dom=''
var el=angular.element(dom)
$compile(el)($scope)
元素附加(el)
}
}
}])
我没有测试过这个,因为它与我自己的案例有点不同,但应该让你开始。它就像一个符咒一样工作,就像它一样!非常感谢你!它就像一个符咒一样,一模一样!非常感谢你!