我正在努力使npm ng2-prism与angular2-seed一起使用,但导入 angular2 / http 时出现问题,正如我们最近所知{{3} }}
但是,我会认为webpack配置中的别名可以解决这些问题,但由于某些原因它没有拿起别名。
这是配置,与种子没有变化。
vendor.ts - 这是我修改的唯一一个将ng2-prism添加到供应商包
的文件// Angular 2
import '@angular/platform-browser-dynamic';
import '@angular/platform-browser';
import '@angular/core';
import '@angular/http';
import '@angular/router-deprecated';
import 'ng2-prism';
ng2-prism的源代码导入很简单(codeblock.component.d.ts:1:66):
import { AfterViewChecked, AfterContentChecked, ElementRef } from 'angular2/core';
webpack.config.js中配置的别名
(...)
resolve: {
root: [ path.join(__dirname, 'src') ],
extensions: ['', '.ts', '.js', '.json', '.css', '.html', '.less'],
alias: {
(...),
'angular2/core': path.join(__dirname, 'node_modules', '@angular', 'core', 'index.js'),
(...)
}
},
(...)
记录结果表明找到了正确的绝对文件夹来解析别名。
我遇到的错误 npm start :
[默认]中的错误C:/workstation/simple-java-mail/src/main/webapp/node_modules/ng2-prism/src/codeblock.component.d.ts:1:66 找不到模块'angular2 / core'。
当然rescoped into @angular,但这是我们迟早会遇到一个或另一个图书馆的情况。
但我没有看到导致无法解决的原因。我错过了什么?
答案 0 :(得分:0)
我通过github https://github.com/angular/angular2-seed/issues/79#issuecomment-220743677回答 别名确实有效但你遇到的问题是打字稿中的类型无法确定类型。我还更新了repo以反映类型的别名(请记住它不包括所有api更改) https://github.com/angular/angular2-seed/commit/df536f8008b44b038c5100379ce5fcb4864c159f