我使用Ember CLI,默认情况下它似乎设置Ember.MODEL_FACTORY_INJECTIONS = true;
在app.js
。Ember.MODEL_FACTORY_INJECTIONS究竟做了什么?
我试着评论此行(并将其设置为false),然后我的应用程序似乎表现为某种严格模式。我得到了一堆失败的断言,因为我的一些Model关系没有明确指定inverse。
这是确切的错误:
You defined the 'account' relationship on (subclass of DS.Model), but multiple possible inverse relationships of type (subclass of DS.Model) were found on (subclass of DS.Model). Look at http://emberjs.com/guides/models/defining-models/#toc_explicit-inverses for how to explicitly specify inverses
使用灰烬CLI生成应用程序与Ember.MODEL_FACTORY_INJECTIONS = true;
默认的,我没有得到这些错误。所以我导致相信这个标志以某种方式改变了核心行为。
请注意!
感谢您的明确解释。 2年后,但仍相关! –
作为一个很好的补充,你可以从Ember 2.13开始删除这个标志。欲了解更多信息,请阅读:https://emberjs.com/deprecations/v2.x/#toc_ember-model-em-factory-em-injections-removed。 –