ngForm是否创建一个新的范围

Does ngForm create a new scope

ng-form 指令是否在 angular js 中创建了一个新的子范围?

谷歌搜索了半个小时,没找到多少。

没有。您可以从这个 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 变量,但是一旦您从该范围内与它交互,它就有自己的变量) .