7

我实际上还没有构建一个应用程序,但是我对 bind-attr 上的文档感到困惑。它说您可以执行以下操作:

App.LogoView = Ember.View.extend({
  logoUrl: 'http://www.mycorp.com/images/logo.png'
});

使用模板:

<div id="logo">
  <img {{bind-attr =logoUrl}} alt="Logo" />
</div>

生产:

<div id="logo">
  <img src="http://www.mycorp.com/images/logo.png" alt="Logo" />
</div>

同样:

App.AlertView = Ember.View.extend({
  priority: "p4",
  isUrgent: true
});

使用模板:

<div {{bind-attr =priority}}>
  Warning!
</div>

生产:

<div class="p4">
  Warning!
</div>

Ember 如何知道它是src第一个示例class中的属性和第二个示例中的属性?除非我在这里遗漏了什么,否则这似乎是不可能的。

4

1 回答 1

14

文档似乎是错误的。运行文档中列出的代码,我收到以下错误:

Uncaught Error: Parse error on line 4:
...    <img {{bind-attr =logoUrl}} alt="Lo
-----------------------^
Expecting 'CLOSE', 'STRING', 'INTEGER', 'BOOLEAN', 'ID', 'SEP'

按照您期望的方式运行代码可以正常工作。您需要指定有问题的属性:

<div id="logo">
    <img {{bind-attr src=logoUrl}} alt="Logo">
</div>

这是一个工作示例(删除属性名称并在控制台中查找错误)。

于 2012-06-14T08:06:29.717 回答