【问题标题】:Babylon.js and Ember: Ember addon with prototype extensions disabled within an app with prototype extensions enabled?Babylon.js 和 Ember:在启​​用原型扩展的应用中禁用原型扩展的 Ember 插件?
【发布时间】:2015-04-22 03:51:22
【问题描述】:

我正在尝试在 Ember 应用程序中使用 Babylon.js,并且遇到与 Ember 扩展 Array 原型(Babylon 也这样做)冲突相关的错误。巴比伦的具体错误:

Uncaught TypeError: renderingGroup.prepare is not a function

我创建了一个 Ember CLI 插件,将 Babylon.js 作为依赖项(禁用原型扩展),并且在插件的虚拟应用程序中进行测试时它可以工作。

一旦我将插件导入我现有的应用程序(启用原型扩展),它就会再次中断(出现相同的错误)。一旦安装到启用了原型扩展的应用程序中,插件是否可以与其依赖项(禁用维护原型扩展)隔离?是否有任何其他可能的解决方案可以让 Bableon.js 在 Ember 中工作?谢谢。

【问题讨论】:

    标签: javascript ember.js ember-cli babylonjs


    【解决方案1】:

    您还必须在导入应用中禁用原型扩展。

    “数组原型扩展”是一个全局修改,你不能在插件中隔离它们。一旦修改了数组的原型,它将针对数组的每个实例进行修改。它是否存在于 Ember 应用程序、JQuery 或您体内的 <script> 标记中都没有关系。

    见:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain

    也许您可以尝试使用 Ember 和 Babylon 添加的原型扩展,这样它们就不会相互冲突......当然这听起来需要做很多工作......

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    相关资源
    最近更新 更多