用ember-cli为DI提供注入(inject)器的方式,我的app/initializers/drupal-csrf-token.js
文件中有以下内容:
export default {
name: 'drupal-csrf-token',
initialize: function(container, app) {
app.inject('route', 'drupalCsrfToken', 'service:drupalCsrfToken');
app.inject('controller', 'drupalCsrfToken', 'service:drupalCsrfToken');
}
};
通常,当您想要带DI的单身人士时,您可以执行以下操作:
container.register('store:main', Store, { singleton: true });
但是,我不知道将单例标志放在初始化器上的位置以使其保持不变。
这有可能吗?
最佳答案
我相信您可以在您的initialize方法中执行此操作:
app.register('service:drupalCsrfToken', 'drupal-csrf-token', { singleton: true });
我确实认为单例默认为true。