Mein Toggle funktioniert gut, aber wenn ich erneut auf die Schaltfläche klicke, wird nicht alles zurückgesetzt. Die geöffnete Registerkarte bleibt geöffnet oder geschlossen (wenn sie geschlossen ist). Es verhält sich so, als ob es nicht auf seine ursprüngliche Form zurückgesetzt werden möchte. Kann mir jemand vorschlagen, was ich falsch mache, bitteAngular js Toggle Event funktioniert nicht richtig
<md-card>
<md-card-content>
<button ng-click="Custom()">Cick Here</button>
<div>
<div ng-repeat="search in vm.searchResults">
<md-card ng-click="callaction=!callaction">
<md-card-content>
<br />
<div ng-repeat="sponsor in search.scp">
<div ng-repeat="cin in sponsor.ci">
<div ng-repeat="po in cin.po" >
<p></p>
<span> {{sponsor.Name }}</span>
<span ng-repeat="prod in po.prods">
<img ng-src="{{img/cc2.ico}}">
</span>
<md-list>
<md-list-item ng-hide="callaction">
<div class="outside">
<div ng-repeat="delivery in po.deliveryAddresses" class='extra divInner'>
{{delivery.PracticeName}} <br /> <span ng-show="delivery.LineTwo">{{ delivery.LineTwo}}
</div>
</div>
</md-list-item>
</md-list>
</div>
</div>
</div>
</md-card-content>
</md-card>
</div>
</div>
</md-card-content>
</md-card>
Javascript
$scope.callaction = true;
$scope.Custom = function() {
$scope.callaction = !$scope.callaction;
};
Dies ist, weil 'ng-repeat' ein erstellen prototypisch vererbten Kindbereich, könnten Sie dieses Problem lösen, indem Sie entweder 'Dot Rule' oder' controllerAs' Muster verwenden, ich empfehle, [diese Antwort] zu lesen (https://Stackoverflow.com/a/38275584/2435473) –
Thats interessant @ PankajParkar. Ich werde dem Thread nach Informationen folgen. Danke, hoffentlich kann ich mein Problem lösen Danke für die Führung – danny