Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 路由器.x27;从angular2中的按钮元素调用时不工作_Typescript_Angular_Angular2 Routing - Fatal编程技术网

Typescript 路由器.x27;从angular2中的按钮元素调用时不工作

Typescript 路由器.x27;从angular2中的按钮元素调用时不工作,typescript,angular,angular2-routing,Typescript,Angular,Angular2 Routing,这是我的一个组件: @Component({ selector: 'login-view', templateUrl: 'app/login/login.component.html', directives: [MATERIAL_DIRECTIVES, FORM_DIRECTIVES] }) export class LoginComponent implements OnInit{ loginForm: ControlGroup; construc

这是我的一个组件:

@Component({
    selector: 'login-view',
    templateUrl: 'app/login/login.component.html',
    directives: [MATERIAL_DIRECTIVES, FORM_DIRECTIVES]
})
export class LoginComponent implements OnInit{

    loginForm: ControlGroup;

    constructor(
        private _formBuilder: FormBuilder, private _router: Router) {
    }

    ngOnInit() {
        // some stuffs
    }

    submitLoginForm(){
        // to be implemented
    }

    goToRegister(){
        this._router.navigate(['/Register']);
    }

    goToResetPassword(){
        this._router.navigate(['/ResetPassword']);
    }
}
这是上述组件的模板:

<form [ngFormModel]="loginForm" (ngSubmit)="submitLoginForm()">

    <input md-input ngControl="mobileNumber" type="number" id="mobileNumber">

    <input md-input type="password" ngControl="password" id="password"/>

    <button md-raised-button type="submit" class="md-raised md-primary">Login</button>

    <div>
        // These Work
        <a md-button class="md-primary" (click)="goToResetPassword()">Forgot password?</a>
        <a md-button class="md-primary" (click)="goToRegister()">New here? Register</a>

       //These don't work, reloads the app
       <button md-button class="md-primary" (click)="goToResetPassword()">Forgot password?</button>
       <button md-button class="md-primary" (click)="goToRegister()">New here? Register</button>
    </div>
</form>

登录
//这些工作
忘记密码了?
新来的?登记
//这些不起作用,请重新加载应用程序
忘记密码了?
新来的?登记
如果我从
(单击)
调用
goToResetPassword()
goToRegister()


但是,如果我将html元素更改为
,它将不起作用,它只会重新加载整个应用程序,而不会在控制台中抛出任何错误。

试试看,这可能适用于您:-

   <a type="button" class="btn "              
   [routerLink]="['/Foo']">{{labels.CancelBtnText}}</a>
{{labels.CancelBtnText}
这也可能有效

 (click)="goToResetPassword();false"
防止按钮的默认提交行为