使用Visual Studio 2015和asp.net核心项目和angular2(rc1)与typescript。
我遇到了Angular2的主要问题,例如@ angular / core的新路径。
问题是typescript编译器无法找到@angular指令。我无法找到解决这个问题的方法。所以问题是如何使visual studio编译器了解在何处查找角度文件。或者甚至不可能这样做?
import {ROUTER_PROVIDERS} from '@angular/router'; // this gives error
import {HTTP_PROVIDERS} from '@angular/http';
import { AppComponent } from './app.component'; // this works
bootstrap(AppComponent, [ROUTER_PROVIDERS, HTTP_PROVIDERS]);
错误信息是: 错误TS2307构建:找不到模块'@ angular / router'。
即使出现这些编译错误,应用程序也能正常工作。因为脚本文件包含在npmcdn.com存储库中。
答案 0 :(得分:1)
如果没有文件目录./
等,则通过默认查看node_modules
文件夹。
如果您将这些位于其他位置,则需要指向该位置。
import {ROUTER_PROVIDERS} from '../somewhere-else/@angular/router';
如果你正在尝试使用CDN(我强烈建议反对做),你仍然需要让SystemJS或Webpack了解全局放置在{{ {1}}。
一个webpack示例:
window
我建议您使用
// webpack.config.js module.exports = { externals: { '@angular/router': 'angular.router' // This right side might be different } };
并在npm
中包含必要的文件。这样,当您执行诸如导入库的特定部分之类的操作时,它只会抓取那些特定部分。 CDN将包含整个库,并污染您的全局窗口命名空间(这只是糟糕的joo-joo)