我的页面上有自定义元素,需要从自定义元素访问app.js上的变量。是将我需要的数据绑定到自定义元素的唯一方法吗?
<custom-element data.bind="data"></custom-element>
我问的原因是我正在运行一个循环来创建多个自定义元素,并且不想将5个变量绑定到每个自定义元素。只是问是否有另一种方式?
答案 0 :(得分:2)
自定义元素的模板无法访问外部范围。这是设计上的。它确保自定义元素是可移植的。这反映了标准元素的工作方式,例如<div>
,<a>
等。您可以在任何地方使用这些元素。传递数据的唯一方法是通过它们的属性。
如果要将自定义元素紧密耦合到外部视图模型,可以执行以下操作:
<custom-element app.bind="$this"></custom-element>
但不建议这样做