我正在构建一个应用程序,它从服务器加载一些数据,并根据这个数据将(附加)指令包含到dom中。
下面是主页html:
<div ng-repeat="type in bet.bet_types">
<div ng-include src="getBetTypeById(type.id)"></div>
</div>
下面是范围中的getBetTypeById(id)
函数:
$scope.getBetTypeById = function(id)
{
switch(id)
{
case 1:
return '/views/partials/1.html';
break;
...
下面是1.html:
<test-test bettype={{type}}></test-test>
下面是tets-test指令:
var app = angular.module('soccerWinner', []);
app.directive('test-test', function()
{
return {
restrict: 'E',
replace: true,
scope:
{
bettype: '='
},
templateUrl: '/views/partials/directives/bettaype_soccer_winner.html',
controller: function()
{
alert('dfd');
}
};
});
这是bettaype_soccer_winner.html
<h2>test</h2>
控制台中没有错误,但也没有显示警告,如指令控制器所示。
我做错什么了?
发布于 2014-06-22 23:31:04
将指令名更改为testTest
。在定义上应该是camelcase。
角规范化元素的标记和属性名,以确定哪些元素匹配哪些指令。我们通常使用区分大小写的camelCase规范化名称(例如ngModel)来引用指令。但是,由于HTML不区分大小写,所以我们通过小写形式引用DOM中的指令,通常对DOM元素(例如ng模型)使用破折号分隔的属性。
https://stackoverflow.com/questions/24360468
复制