为了避免基于 ember 的应用程序的开发/生产环境和测试环境之间的名称冲突,最好的做法是什么。
通常,每个 Ember 应用程序都有一个命名空间:
window.MyApp = Em.Application.create();
在生产中,我通过重新定义 Em.Application 的 ready 属性来运行一些初始化函数
window.MyApp = Em.Application.create(
ready: function() {
// create some objects
}
);
但是,在我的测试环境中,我不想运行这些初始化函数,因为我自己创建了对象。使用 MyApp 的相同定义会导致冲突,因为我创建的对象在 DOM 中插入了相同的元素。那么,当我测试我的应用程序时,如何在没有 ready 函数的情况下使用相同的命名空间 MyApp 呢?我使用 jasmine 来测试应用程序。