我正在开发一个带有angular2和gulp的节点应用程序.我已经编写了一个组件文件login.ts,如下所示:
import {Component, View} from 'angular2/angular2'; import {FormBuilder, formDirectives } from 'angular2/forms'; @Component({ selector: 'login', injectables: [FormBuilder] }) @View({ templateUrl: '/scripts/src/components/login/login.html', directives: [formDirectives] }) export class login { }
我的bootstrap.ts文件是:
import {bootstrap} from 'angular2/angular2'; import {login} from './components/login/login'; bootstrap(login);
但是当我编译这些文件时,它会给我以下错误:
client\bootstrap.ts(1,25): error TS2307: Cannot find module 'angular2/angular2'. client\components\login\login.ts(1,31): error TS2307: Cannot find module 'angular2/angular2 client\components\login\login.ts(2,45): error TS2307: Cannot find module 'angular2/forms'.
这是我的tsconfig.json:
{ "compilerOptions": { "target": "es5", "module": "commonjs", "sourceMap": true, "watch": true, "removeComments": true, "moduleResolution": "node", "emitDecoratorMetadata": true, "experimentalDecorators": true } }
我已经安装了angular2的输入:
tsd install angular2 --save
请帮助修复错误.
@simon错误说是在进口中.但对于进一步的进口,我发布了这个答案可能对其他人也有用.
import {Component, View, Directive, Input, Output, Inject, Injectable, provide} from 'angular2/core'; import {bootstrap} from 'angular2/platform/browser'; import {CORE_DIRECTIVES, FORM_DIRECTIVES, NgClass, NgIf NgForm, Control, ControlGroup, FormBuilder, Validators} from 'angular2/common'; import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS, Router, LocationStrategy, HashLocationStrategy} from 'angular2/router'; import {Http, HTTP_PROVIDERS, RequestOptions, Headers, Request, RequestMethod} from 'angular2/http'更新 -
@View
现在不再是angular2,所以不需要导入
import {view} from 'angular2/core'更新2
由于angular2在RC中,所以所有进口都有重大变化,如果所有更新的进口都是列表 -
angular2/core -> @angular/core angular2/compiler -> @angular/compiler angular2/common -> @angular/common angular2/platform/common -> @angular/common angular2/common_dom -> @angular/common angular2/platform/browser -> @angular/platform-browser-dynamic angular2/platform/server -> @angular/platform-server angular2/testing -> @angular/core/testing angular2/upgrade -> @angular/upgrade angular2/http -> @angular/http angular2/router -> @angular/router angular2/platform/testing/browser -> @angular/platform-browser-dynamic/testing
它在测试之前就改变了模块
import {Component, View} from 'angular2/core';
仅供参考:bootstrap也改为
import {bootstrap} from 'angular2/platform/browser';
因此,网上的很多博客文章都已过时:-(