ReferenceError: MouseEvent is not defined

ReferenceError: MouseEvent is not defined

我正在尝试使用 ng2-select in a project which uses angular/universal-starter (TypeScript 2.x) 作为 backbone.

(我尝试在 angular-cli 生成的项目中添加 ng2-select,但效果很好)

添加这两行之后:

import { SELECT_DIRECTIVES } from 'ng2-select/ng2-select';

@Component({
  directives: [SELECT_DIRECTIVES],
  ...

我的终端已经出现错误:

ReferenceError: MouseEvent is not defined
    at /my-project/node_modules/ng2-select/components/select/off-click.js:33:42
    at Object.<anonymous> (/my-project/node_modules/ng2-select/components/select/off-click.js:43:2)
    at Module._compile (module.js:541:32)
    at Object.Module._extensions..js (module.js:550:10)
    at Module.load (module.js:458:32)
    at tryModuleLoad (module.js:417:12)
    at Function.Module._load (module.js:409:3)
    at Module.require (module.js:468:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/my-project/node_modules/ng2-select/components/select/select.js:20:19)
    at Module._compile (module.js:541:32)
    at Object.Module._extensions..js (module.js:550:10)
    at Module.load (module.js:458:32)
    at tryModuleLoad (module.js:417:12)
    at Function.Module._load (module.js:409:3)
    at Module.require (module.js:468:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/my-project/node_modules/ng2-select/components/select.js:2:16)
    at Module._compile (module.js:541:32)
    at Object.Module._extensions..js (module.js:550:10)
    at Module.load (module.js:458:32)
    at tryModuleLoad (module.js:417:12)
[nodemon] app crashed - waiting for file changes before starting...

这是我的tsconfig.json文件:

{
  "compilerOptions": {
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "module": "commonjs",
    "removeComments": true,
    "sourceMap": true,
    "lib": ["es6", "dom"]
  },
  "include": [
    "node_modules/@types/**/*.d.ts",
    "src/**/*.ts"
  ],
  "exclude": [
    "node_modules",
    "!node_modules/@types/**/*.d.ts"
  ],
  "compileOnSave": false,
  "buildOnSave": false,
  "atom": {
    "rewriteTsconfig": false
  }
}

我想错误是因为指令没有正确加载。

1) 确保导入了正确的组件,并验证是否定义了 MouseEvent

2) 验证是否正在导出所有组件;

3) 在

@Component({
  directives: [SELECT_DIRECTIVES],
  ...

确保 SELECT_DIRECTIVES 不是数组对象。如果是,我认为您应该尝试使用

[ ...SELECT_DIRECTIVES ]

是因为https://github.com/valor-software/ng2-select/issues/258.

请跟踪此问题。