このコードはAngular 1.3を使用しており、ng-showディレクティブでdivを最初の場所に読み込むと表示しないようにします:ng-showがfalseに設定されていると、ページロード時に要素が非表示にならない
<div class="stuff">
<uib-accordion close-others="false">
<div ng-show="element.visible" ng-repeat="element in elements" ng-if="element.active" uib-accordion-group ng-class="element.open? 'colorBackgroundBlue':'black'" class="panel-default yellow" is-open="element.open">
<uib-accordion-heading>
{{element.title}} ({{element.number}})
</uib-accordion-heading>
<div class="scrollable-accordion" ng-if="element.numberOfElements!=0">
</div>
</div>
</uib-accordion>
</div>
element.visible
ブールは、コントローラにはfalseに設定されている:
$scope.elements = [{
status: 0,
title: blabla,
number: 0,
open: false,
active: false,
visible: false
}, {
status: 1,
title: blob,
number: 0,
open: false,
active: false,
visible: false
}]
NG-ショーが正しくfalseに設定されているように見えますが、要素はとにかく現れるいくつかの理由。私がブラウザにいる間にボタンをvisible
ブール値にバインドして変更すると、要素が表示されて正しく消えます。
それをNGに隠すと、別の方法を試してみてください= "!element.visible" または – Mazz
= "element.visible" NG-ifとタグを追加する 'NG-cloak' – Mazz
NG-ショーは時にはファンキーである、私は傾向があります代わりにng-hideを適用する必要があります。私はなぜこれらの問題が自分自身にあるのかまだ分かりません。 ng-hide = "!element.visible"を試しましたか? –