Angular2没有提供程序错误。
来自浏览器控制台的确切错误消息:" EXCEPTION:没有用户提供商! (登录 - >用户)"。
typescript编译器编译得很好。
模板加载正常。
但浏览器控制台有错误。
另外,您可以使用click和ng-model检查我的模板是否正确。
这是我的代码:
import {Component, View, Injectable, CORE_DIRECTIVES, FORM_DIRECTIVES} from 'angular2/angular2';
import {AuthService} from '../../authService';
@Injectable()
class User{
email:string;
password: string;
}
@Component({
selector: 'Login',
})
@View({
templateUrl: '/src/app/components/login/login.html',
directives: [CORE_DIRECTIVES, FORM_DIRECTIVES],
})
@Injectable()
export class Login {
authService:AuthService;
user: User;
constructor(authService: AuthService, user: User){
this.authService = authService;
this.user = user;
}
login = () => {
console.log("login");
}
}
enter code here
这是此组件的模板:
<section class="container centered">
<div class="row">
<div class="well bs-component col-xs-12 col-xs-offset-0 col-sm-12 col-sm-offset-0 col-md-6 col-md-offset-3 col-lg-offset-4 col-lg-4">
<h3>Log In</h3>
<form class="padding-top-20" role="form" novalidate>
<div class="form-group">
<input class="form-control" type="text" name="email" id="email" placeholder="Email Address" [(ng-model)]="user.userName" required autofocus />
</div>
<div class="form-group">
<input class="form-control" type="password" name="password" id="password" placeholder="Password" [(ng-model)]="user.password" required autofocus />
</div>
<button class="btn btn-primary btn-wide" type="submit" (click)="login()">Log In</button>
<div class="padding-top-20 padding-bottom-20">
<a href="/forgotpassword" title="Forgot Password?">Forgot Password?</a>
</div>
</form>
</div>
</div>
</section>
以下是浏览器控制台错误的屏幕截图:
答案 0 :(得分:7)
要注册注射剂,请在组件定义中使用:
@Component({
selector: 'Login',
providers: [Login, User]
})