use*_*405 4 angularjs angularjs-directive
我有一个包含基于范围变量的HTML文件的指令.当第一次加载HTML时一切都很好.但是当范围变量由ng-clic改变时,我无法回忆指令.
这是我的指示:
my.directive('myType', function() {
return {
restrict: 'A',
replace: true,
link: function($scope, element, attrs) {
var myHTML;
if ($scope.aType==1) myHTML = "aaaa";
if ($scope.aType==2) myHTML = "bbbb";
$scope.contentUrl = 'library/template/tmp-' + myHTML + '.html';
},
template: '<div ng-include="contentUrl"></div>'
}});
Run Code Online (Sandbox Code Playgroud)
$ scope.aType是在ng-click上更改的范围变量.提前致谢.
您需要watch在aType或某种事件上添加一个以使代码运行多次(在链接时):
这样的事情:
link: function($scope, element, attrs) {
$scope.$watch('aType', function(newVal, oldVal){
var myHTML;
if ($scope.aType==1) myHTML = "aaaa";
if ($scope.aType==2) myHTML = "bbbb";
$scope.contentUrl = 'library/template/tmp-' + myHTML + '.html';
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14311 次 |
| 最近记录: |