ember.js中的bind-attr如何工作?

bra*_*rad 7 binding ember.js

我还没有真正构建一个应用程序,但我对bind-attr的文档感到困惑.它说你可以这样做:

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

使用模板:

<div id="logo">
  <img {{bind-attr =logoUrl}} alt="Logo" />
</div>
Run Code Online (Sandbox Code Playgroud)

生产:

<div id="logo">
  <img src="http://www.mycorp.com/images/logo.png" alt="Logo" />
</div>
Run Code Online (Sandbox Code Playgroud)

同样地:

App.AlertView = Ember.View.extend({
  priority: "p4",
  isUrgent: true
});
Run Code Online (Sandbox Code Playgroud)

使用模板:

<div {{bind-attr =priority}}>
  Warning!
</div>
Run Code Online (Sandbox Code Playgroud)

生产:

<div class="p4">
  Warning!
</div>
Run Code Online (Sandbox Code Playgroud)

Ember如何知道它是src第一个例子中的class属性和第二个例子中的属性?除非我在这里遗漏了一些东西,否则这似乎不太可能.

Jam*_*ice 14

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

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

正如您所期望的那样运行代码可以正常工作.您需要指定有问题的属性:

<div id="logo">
    <img {{bind-attr src=logoUrl}} alt="Logo">
</div>
Run Code Online (Sandbox Code Playgroud)

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

  • 源文档已经修复.该网站尚未更新. (2认同)