angular 2アプリケーションで2.0.0-rc.6を使用しています。フォーム送信時にこのエラーが発生します- self.context.onSubmitは関数ではありません
また、ブラウザにフォーム値を追加しています。
http:// localhost:3000/register
送信すると、ページの再読み込みとURLは次のようになります。
コードは
フォーム
<form class="ui form" (ngSubmit)="onSubmit()" #registrationForm="ngForm">
----
----
<button type="submit" class="ui button"> Register</button>
</form>
サービス
import { Component } from '@angular/core';
import { User } from '../models/user';
import { RegisterService } from '../services/register.service';
@Component({
selector: 'side-panel',
templateUrl: 'app/components/register.component.html'
})
export class RegisterComponent {
newuser: User = new User();
theText: string;
constructor(private _registerService: RegisterService){
}
onsubmit(){
console.log('form submit clicked..');
this._registerService.sendUser(this.newuser).subscribe(
date =>{
this.newuser = new User();
},
error => console.log(error)
);
}
}
このエラーは、イベントで呼び出されたメソッドの名前がテンプレート宣言と一致せず、クラス内にある場合に発生します
テンプレートで、キャメルケースとしてonSubmit()を指定しました
<form class="ui form" (ngSubmit)="**onSubmit()**" #registrationForm="ngForm">
しかし、クラス内では、キャメルケースではありません "onsubmit()"
onsubmit(){
console.log('form submit clicked..');
this._registerService.sendUser(this.newuser).subscribe(