我已经开始了一个新的ASP.NET5 / MVC6项目。
尝试1 我的问题是,当我在moduleResolution
中将classic
设置为tsconfig.json
时,我收到如下错误:
无法找到模块'angular2 / core'
尝试2 如果我更改tsconfig.json
以使用node
解析,则node_modules
中的排除tsconfig.js
不起作用,{{3}虽然它似乎仍然是一个问题,但当工作室2015通过node_modules
文件夹,包括整个树中的每个.d.ts
时,会遇到多个错误。}有数百个错误,主要是rxjs
。
尝试3 如果我完全删除tsconfig.json
,我可以让应用程序执行,并编译文件,但唉,这个错误在浏览器中。
错误:(SystemJS)要求未定义
我不禁认为Visual Studio 中的angular2 / typescript支持完全混乱,我应该回到angular 1和MVC5 。为了记录,我使用的是typescript 2.0.6,我的visual studio是完全最新的。
package.json
和tsconfig.json
的组合实际上是否与Visual Studio 2015 for angular2一起开箱即用。
package.json
具有以下依赖关系。
{
"version": "1.0.0",
"name": "asp.net",
"private": true,
"devDependencies": {
"angular2": "^2.0.0-beta.17"
},
"dependencies": {
"@types/angular2": "0.0.2",
"angular2": "^2.0.0-beta.17",
"es6-shim": "^0.35.1",
"gulp": "^3.9.1",
"gulp-jasmine": "^2.4.2",
"gulp-print": "^2.0.1",
"gulp-sass": "^2.3.2",
"gulp-typings": "^2.0.4",
"gulp-watch": "^4.3.10",
"karma": "^1.3.0",
"reflect-metadata": "^0.1.8",
"rxjs": "^5.0.0-rc.2",
"zone.js": "^0.6.26"
}
}
tsconfig.json
如下
{
"compilerOptions": {
"experimentalDecorators": true,
"moduleResolution": "classic"
},
"exclude": ["node_modules"]
}
boot.ts
如下
/// <reference path="../node_modules/angular2/core.d.ts"/>
// the above is a correct path, but it doesn't seem to matter.
import {bootstrap} from "angular2/platform/browser";
// ~~~~~~~~~~~~~~~~~~~~~~~~~ (Error Here)
import {HTTP_PROVIDERS} from "angular2/http";
import {AppComponent} from "./app.component";
bootstrap(AppComponent, [HTTP_PROVIDERS]);
console.log("starting angular...");
app.component.js
/// <reference path="../node_modules/angular2/core.d.ts"/>
import { Component, OnInit } from "angular2/core";
// ~~~~~~~~~~~~~ (Error Here)
@Component({
selector: "app",
templateUrl: "static.html"
})
export class AppComponent implements OnInit {
message: string;
constructor() {
console.log("starting app component");
}
ngOnInit() {
this
.message =
"The 'static.html' was used as the Angular2 'templateUrl'. There is a 'message' property bound to the <blockqoute> element.";
}
}
答案 0 :(得分:0)
注意:确保在wwwroot目录中安装了 es6-shim.d.ts
。如果没有es6-shim.d.ts
node_modules
文件
我有一个集成angular2(2.1.0)和ASP.NET核心的示例,我认为ng2的软件包依赖项也适用于ASP.NET5。
希望它有所帮助!