ちょっとした jQuery の助けを借りて、使用できる別のソリューションを次に示します。
コントローラーに呼び出される関数を追加showMe
します。
var app = angular.module("app", []);
app.controller("AppCtrl", function($scope) {
$scope.showMe = function(event) {
$(event.target).find('p').toggle();
};
});
次に、HTML で、次のように変更します。
...
<div ng-controller="AppCtrl">
<div class="box" ng-click="showMe = !showMe">
<p ng-show="showMe">1</p>
</div>
</div>
...
に:
...
<div ng-controller="AppCtrl">
<div class="box" ng-click="showMe($event)">
<p>1</p>
</div>
</div>
...
デフォルトで要素を非表示にしたい場合はp
、CSS を少し追加するだけです。
.box p {
display: none;
}
JSBin: http://jsbin.com/fegevoyoda/2/