我在Angular中创建了一个指令。指令'编译'当我使用template
属性时。使用templateURL
时,它不会编译。
templateURL文件在角度页面的控制台或网络选项卡中没有404。它是200作为浏览器URL。
我错过了什么?
'use strict';
angular.module('mean.profile').directive('inProfileSidebar', function() {
return {
restrict: 'A',
scope: {
data: '=',
editable: '=',
},
template: '<div><h2>inProfileNarrow</h2><div>{{data}}</div><div>{{editable}}</div></div>',
// templateURL: '/profile/views/inProfileSidebar.html',
};
});
我的应用的网址是:http://localhost:3000/#!/profile/
此网址为200:http://localhost:3000/profile/views/inProfileSidebar.html
inProfileSidebar.html
<div>
<h2>inProfileNarrow</h2>
<div>{{data}}</div>
<div>{{editable}}</div>
</div>
在此HTML中使用:
<div class="col-md-4">
<div in-profile-sidebar data="data.profile" editable="data.profile.editable"></div>
</div>
我没有在浏览器控制台中看到任何错误,并且浏览器的网络日志中没有对templateURL的请求。
我使用template
时有效,但templateURL
无效。为什么呢?
答案 0 :(得分:4)
我没有测试它,但从快速看看,你似乎错误地命名了属性。
应该是&#39; templateUrl&#39;,NOT&#39; templateURL&#39; (只有&#39; U&#39;是大写的。)