无法将 Aurelia 的 EventAggregator 注入特定 class

Having trouble injecting Aurelia's EventAggregator into a particular class

我在应用程序的多个位置使用了 EventAggregator,一切正常。但是,我无法将其注入 one 我的 classes。当调用 class 构造函数时,EventAggregator 参数未定义。

import {EventAggregator} from 'aurelia-event-aggregator';
import {inject} from 'aurelia-framework';

@inject(EventAggregator)
export class Test {
    constructor(eventAggregator) {
        debugger;
        this.eventAggregator = eventAggregator;
    }
}

当停在 debugger; 行时,构造函数的 eventAggregator 参数未定义。

这看起来就像我在许多其他 classes 中使用 EventAggregator 所做的一样,所以可能是什么问题?

我认为这与分叉(安装了同一包的多个版本)有关。

  1. 要清理它,请打开您的 config.js 文件并删除 map: { 节点内的所有内容。例如-所有 this
  2. 然后执行jspm install
  3. 然后再次检查叉子。 jspm inspect --forks
  4. 如果你还有分叉,执行jspm install aurelia-_______ for each aurelia item listed in your package.json

事实上 - 您可能想直接跳到第 4 步 - 这将确保您获得最新版本,现在是 aurelia 的 1.0.0 (RTM) 版本。