Сегодня я наткнулся на очень странную проблему, просто пытаюсь понять, почему это происходит
Ниже мой HTMLПочему нг-если создает так много проблем в angularjs
<div class="partial-container workflow-cont" ng-if="true">
<div class="clearfix mb20">
<h3 class="heading-text pull-left pointer" ng-click="resetRole()" >{{'Roles' | translate}}</h3>
</div>
<div class="inner-container blue-border clearfix relative no-padding" ng-if="true">
<div class="role-left-nav pull-left">
.
.
.
Some other html
.
.
.
<div class="any-or-select pull-none clearfix valign-middle">
<p>
<input type="radio" name="choice_p" id="low" ng-model="defineChoice" value="0" >
<label for="low" class="ng-binding">{{'Absolute' | translate}}</label>
</p>
<p>
<input type="radio" name="choice_p" id="medium" ng-model="defineChoice" value="1" >
<label for="medium" class="ng-binding">{{'Attributes' | translate}}</label>
</p>
<p>
<input type="radio" name="choice_p" id="high" ng-model="defineChoice" value="2" >
<label for="high" class="ng-binding">{{'Rule' | translate}}</label>
</p>
</div>
Теперь, когда я нажимаю кнопки радио значения модели defineChoice был успешно изменен.
Но когда я пытаюсь сделать то же самое с контроллера $ scope.defineChoice = 0 Его значение не менялось, однако, когда я сделал console.log с контроллера, он стал нулевым, но не был отражен в представлении.
Но когда я удалил ng-if = "true" со всей видимости, все прошло хорошо! Это из-за того факта, что ng-if создает дочернюю область, но если да, то почему он работал в первый раз, когда init, но позже стал кислым.
Возможный дубликат [Angularjs ng-model не работает внутри ng-if] (http://stackoverflow.com/questions/18342917/angularjs-ng-model-doesnt-work-inside-ng-if) –