ng-showブロック内でng-showディレクティブを使用すると問題が発生します。
ブール値がng-showに正しく渡されていないようです...
私の言いたいことを示すために、JSFiddleで作成した例のスクリーンショットを次に示します。
マークアップの例を次に示します。
<table ng-controller="ActressController" class="table table-bordered table-striped">
<tr ng-repeat="actress in actressList">
<td>
<span class="actress-name">{{ actress.name }}</span>
<h4 ng-show="{ actress.name == 'Scarlett' }">Was in Avengers! <span class="note">(should only appear if Scarlett)</span></h4>
<h2>{{ actress.name == 'Scarlett'}} <span class="note"><-- this statement is correct</span></h2>
</td>
</tr>
</table>
次にコントローラーの例を示します。
function ActressController($scope) {
$scope.actressList = [
{
name: "Angelina"
}, {
name: "Scarlett"
}, {
name: 'Mila'
}, {
name: 'Megan'
}
]
}
私が間違っているかもしれないことについての考えはありますか?
ng-show
で{}は必要ありません。これを試してください:
<h4 ng-show="actress.name == 'Scarlett'">Was in Avengers! <span class="note">
ng-show
内のng-repeat
の動作サンプルについては、 this fiddle を参照してください。