我试图通过我的模板click
事件调用函数,但错误是“get is not a function”。有人能找到问题所在吗?
我的模板:
<button class="btn btn-primary" (click)="get()">sign-up</button>
我的意见:
import {Component} from '@angular/core';
import {FORM_DIRECTIVES, REACTIVE_FORM_DIRECTIVES} from '@angular/forms';
import {FormBuilder, FormGroup, Validators} from '@angular/forms'
import { Http, Headers } from '@angular/http';
import { Router, ROUTER_DIRECTIVES } from '@angular/router';
@Component({
directives: [FORM_DIRECTIVES, REACTIVE_FORM_DIRECTIVES],
templateUrl : "./components/login/login.html",
})
export class Login {
//http: Http;
form: FormGroup;
constructor(public router: Router, public http: Http, fbld: FormBuilder) {
// this.http = http;
this.form = fbld.group({
email: ['', Validators.required],
phone: ['', Validators.required]
});
}
function get(){
// this.router.navigate(['/demo/signup']);
alert('hai');
}
答案 0 :(得分:1)
只要您正在使用Typescript,就不需要使用function
关键字定义函数。
所以改成它,
get(){
...
}
答案 1 :(得分:1)
在typescript中,方法声明如下:
public get() {
....
}
你的功能不起作用,因为这样的声明是javascript对象的内部函数。要使用类似功能,请执行以下操作:
public get = function() {
....
}