我正在尝试创建一个 AngularJS 自定义指令,如果它在变量中,它会隐藏一个元素。
例如,我从指令生成了三个链接:
- 首页
- 关于
- 隐藏
我想隐藏“隐藏”链接。
这是我的看法:
<ul>
<menu link="Home"></menu>
<menu link="About"></menu>
<menu link="Hide"></menu>
</ul>
...指令:
app.directive('menu', function() {
return {
scope: {
link: "@"
},
template: '<li ng-hide="hideMenu(link)">{{link}}</li>',
controller: function($scope) {
var hideLink = 'Hide';
function hideMenu(link) {
if (hideLink == link) {
return true;
}
}
}
};
});
谢谢!
最佳答案
要使您的函数在您的模板中可用,它必须在您的范围内。这是更新后的代码:
app.directive('menu', function() {
return {
scope: {
link: "@"
},
template: '<li ng-hide="hideMenu(link)">{{link}}</li>',
controller: function($scope) {
var hideLink = 'Hide';
$scope.hideMenu = function(link) {
if (hideLink == link) {
return true;
}
}
}
};
});
关于javascript - 具有隐藏功能的 AngularJS 自定义指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28686946/