AngularJS指令templateUrl不更新

用户名

我对角度指令有疑问。当我编辑通过引用的文件的内容时,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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章