我的AngularJS应用程序没有显示TemplateURL的内容(在localhost上运行的测试应用程序,而不是file://),我也无法让它在Plunkr上运行。请帮我找一下我做错了什么。
我的元素是这样的:
<div case-test=""></div>
使用此指令,文本“这里是DIR的案例测试”出现在它应该的位置:
.directive('caseTest', function () {
return {
restrict: 'A',
template: 'HERE IS CASE TEST IN DIR',
link: function (scope, element, attrs) {
console.log("Case test running")
}
};
});
但是当我将指令更改为此时,case.html的内容不会出现。 console.log运行并且不会出现错误:
.directive('caseTest', function () {
return {
restrict: 'A',
templateURL: 'case.html',
link: function (scope, element, attrs) {
console.log("Case test running")
}
};
});
case.html位于Web应用程序的根目录中,与应用程序的index.html位于同一文件夹中。
我把它放在a Plunkr where it also doesn't work, for your viewing pleasure中。正如您所看到的,如果查看控制台输出,则两个指令都会运行,但只有第一个指令会打印出它的模板。
我在这里做错了什么?
答案 0 :(得分:5)
您可以通过网址引用模板的属性的正确名称是templateUrl
,而不是templateURL
。