ли директива ng-form создает новую подпунктовую область в угловых js?Создает ли ngForm новую область действия
Был ли поисковый запрос в течение полутора часов не мог найти много.
ли директива ng-form создает новую подпунктовую область в угловых js?Создает ли ngForm новую область действия
Был ли поисковый запрос в течение полутора часов не мог найти много.
Nope. Вы можете сказать из этого plunker, что ng-form
не создает новую область.
<h2>Parent Scope</h2>
<input ng-model="name" />
<p>Hello {{name}}!</p>
<h2>ng-form</h2>
<ng-form>
<input ng-model="name" />
<p>Hello {{name}}!</p>
</ng-form>
<h2>ng-if</h2>
<div ng-if="true">
<input ng-model="name" />
<p>Hello {{name}}!</p>
</div>
Способ, которым вы можете сказать, по той же причине, что вы никогда не должны ставить примитив в сферу действия. Если вы измените первые два входа, переменная name
изменится для всех трех. Но если вы измените последний вход, он изменится только там. И после этого он перестанет отвечать на изменения, внесенные в первые два поля ввода (поскольку ранее он использовал переменную name
родительской области, но как только вы взаимодействуете с ней из этой области, у нее есть своя переменная).
Насколько я знаю, он не создает новую область, только ng-repeat, ng-include, ng-switch, ng-view, ng-controller и ng-if do. https://github.com/angular/angular.js/wiki/Understanding-Scopes#angular-scope-inheritance – yvesmancera