Ember因Prototype.js而中断

时间:2014-10-16 11:58:07

标签: ember.js

我将我的Ember App嵌入到另一个环境中。 Prototype.js在那里使用。因此,余烬打破了。

我已阅读http://emberjs.com/guides/configuring-ember/disabling-prototype-extensions/

I followed that but unfortunately issue is not resolved.

JS Bin:http://jsbin.com/raqab/2/edit

I am not sure what i am doing wrong here, Can anyone please assist me?

1 个答案:

答案 0 :(得分:0)

在同一指南中,arrays解释了禁用原型扩展的效果,据说

  

原生数组将不再实现观察它们所需的功能。如果禁用原型扩展并尝试将本机数组与模板' s {{#each}}帮助程序一起使用,Ember.js将无法检测到对数组的更改,并且模板将不会更新为基础数组更改。

     

此外,如果您尝试将Ember.ArrayController的模型设置为普通本机数组,它将引发异常,因为它不再实现Ember.Array接口。

     

您可以使用便捷方法Ember.A手动将本机数组强制转换为实现所需接口的数组:

因此,将model挂钩更改为

App.ApplicationRoute=Ember.Route.extend({
  model:function(){
    return Ember.A(["one","two","three"]);
  }
});

并在您的模板中

<ul>
 {{#each model}}
   <li>{{this}}</li>
 {{/each}}
</ul>

更新了jsbin:http://jsbin.com/hayata/1/edit

现在ember没有抛出任何错误,但是其他脚本会抛出一些错误。

一旦你解决了这个问题就可以了。