【发布时间】:2015-06-18 13:57:33
【问题描述】:
我是 AngularJS 的新手,在理解 Angular 中的作用域概念时遇到了一些麻烦。我已经阅读了一些关于 stackoverflow 的帖子以及在线文章,它们建议我创建一个自定义指令来创建一个隔离范围,但我无处可去......
至于我正在做的项目,我正在尝试制作一个按钮,单击该按钮将触发一个文本区域。但是,由于 ng-repeat,当我只单击一个按钮时,所有按钮都会触发 textarea。
我的 .js 文件:
angular.module('myApp')
.controller('myCtrl', function ($scope, Question) {
scope.visible = false;
scope.toggle = function() {
scope.visible = !scope.visible;
};
.directive("myDirective", function () {
return {
scope: {
ngClick: '&',
ngShow: '&'
}
}
});
这是我的 HTML 文件:
<ul>
<li ng-repeat="object in objectList">
<button type="text" myDirective ng-click="toggle()">Click</button>
<textarea myDirective ng-show="visible"></textarea>
</li>
</ul>
【问题讨论】: