角度2配置拖拉

时间:2016-06-25 17:10:44

标签: configuration angular

我有一个角度2 CLI项目,我想添加Dragula第三方组件。我安装了npm模块并配置了angular-cli-build.js以获取组件并将其放在/dist文件夹中,如下所示:

vendorNpmFiles: [
  'systemjs/dist/system-polyfills.js',
  'systemjs/dist/system.src.js',
  'zone.js/dist/**/*.+(js|js.map)',
  'es6-shim/es6-shim.js',
  'reflect-metadata/**/*.+(js|js.map)',
  'rxjs/**/*.+(js|js.map)',
  '@angular/**/*.+(js|js.map)',
  'ng2-dragula/**/*.+(js|js.map|d.ts)'
]

这样可行,并且在构建时会复制文件。 我在导入中引用模块如下:

import {Dragula,DragulaService} from 'ng2-dragula/ng2-dragula';

这似乎也是正确的,因为visual studio代码似乎找到了参考。

我猜问题出在system-config.ts上。在这里我添加一个映射:

const map: any = {
  'ng2-dragula': 'vendor/ng2-dragula'
};

但是当我开始时,我收到404错误显示:

  

zone.js:101 GET http://localhost:4200/vendor/ng2-dragula/ng2-dragula   404(未找到)

我试图在'packages'中添加defaultExtension,但这只会在链接的末尾添加额外的'ng2-dragula.js'。

位置'... / vendor / ng2-dragula /'的内容是:

  • NG2-dragula.js
  • NG2-dragula.d.ts

我错过了什么?此路径是否应该选择类型定义文件?

感谢您的帮助

勒夫

1 个答案:

答案 0 :(得分:0)

您是否添加了拖拉路径?

    paths: {
        'dragula': 'node_modules/dragula/dist/dragula.js',
        'ng2-dragula/*': 'node_modules/ng2-dragula/ng2-dragula.js',

看看这是否有帮助。