我对角度指令有疑问。当我编辑通过引用的文件的内容时,templateUrl
直到删除缓存后才会显示结果。我有以下代码:
Directive.js
.directive('appMainsec',['$window', function ($window){
var objectMainSec = {
restrict: 'A',
templateUrl: 'partials/app-mainsec.html',
controller: function (){},
controllerAs: 'MainSectCtrl',
link: function ($scope,elemnt,attr){
elemnt.css('height', ($window.innerHeight - ($window.innerHeight * .25)) + 'px');
}
};
return objectMainSec;
}]);
app-mainsec.html
<div><h1>Principal</h1></div>
和index.html
...
<div app-mainsec></div>
...
当我改变<h1>Hi</h1>
到<h1>Hello</h1>
,指令的视图不会更新,直到我删除缓存。
这样做的原因是,Angular在一开始只获取一次文件。您可以尝试将templateUrl用作函数并附加时间戳,以便每次获取新的模板URL。
templateUrl: function() {
return 'partials/app-mainsec.html?' + +new Date();
}
但是可能只有在编译指令时,它才会刷新您的指令。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句