Ember.js和Mootools不兼容?

时间:2014-02-24 09:08:03

标签: javascript ember.js mootools

我运行的Ember应用程序在一个也加载Mootools的页面内运行。

这是我正在更新的旧应用程序。 使用1.0-pre4它运行良好。使用1.0-RC8(最早发现)到1.5beta,没有版本可以使用了。

我将其跟踪到Mootools代码开头的代码:

Function.prototype.extend = function(key, value) { /* ... */ }

在mootools中删除该行可使其正常工作。 其他人有类似的情况?有什么方法可以在同一页面中使用这两个库吗? (p.s.不,我不能删除Mootools - 无法控制它)

1 个答案:

答案 0 :(得分:1)

Ember和Mootools扩展了内置对象的原型,函数的实现对他们来说是不同的,这就引起了问题。

尝试在ember中关闭原型扩展:

http://emberjs.com/guides/configuring-ember/disabling-prototype-extensions/

如果这没有用,那么我相信你应该摆脱函数原型中的extend方法。

最好的解决方案是用jQuery替换mootools,但你需要有更多的访问权限和时间去做。