【问题标题】:Angular changing parent model from transclude scope从 transclude 范围改变父模型的角度
【发布时间】:2016-03-31 13:06:12
【问题描述】:

我对角度嵌入范围感到困惑。我试图让我们说可折叠指令。但是嵌入范围内的绑定不会改变父模型,除非我为模型使用一些对象,例如。数据。

<div>
  data.prop: {{data.prop}} <br>
  prop: {{prop}}
  <collapsible>
    data.prop: <input type="text" ng-model="data.prop" /> <br> // WILL CHANGE PARENT
    prop: <input type="text" ng-model="prop" /> // WONT CHANGE PARENT
  </collapsible>
</div>

我已经阅读了这个主题,但我仍然不明白为什么我必须在模型中使用前缀。 Confused about Angularjs transcluded and isolate scopes & bindings

http://plnkr.co/edit/z3IvR1a37jdNRCJWG0Yq?p=preview 的工作示例

在我的应用程序中,我使用对象作为表单,所以它工作正常,但我只想知道为什么会这样。

【问题讨论】:

    标签: javascript angularjs angularjs-ng-transclude


    【解决方案1】:

    当您使用对象绑定到模型时,您的对象作为引用而不是副本传递给不同的范围,Javascript 对象作为引用传递给函数。在这种情况下,它仍然会引用以前的范围。

    【讨论】:

    • 谢谢,看来有道理。
    猜你喜欢
    • 1970-01-01
    • 2018-09-22
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-28
    • 2015-03-15
    • 1970-01-01
    相关资源
    最近更新 更多