Angular 和 Router - 意外的页面刷新

问题描述 投票:0回答:2

一直在挣扎,直到意识到如果我将单击事件绑定到组件中不存在的方法,Angular 就会刷新页面。我认为这是因为

routerLink
,因为如果我删除它,我会得到一个预期的错误
method checkUser() does not exist
。为什么会出现这种情况?

<a md-button 
    routerLink="articles" 
    routerLinkActive="menu-active"
    (click)="checkUser()"
    >Articles</a> 
angular angular-ui-router
2个回答
0
投票

应用于

routerLink
元素的
a
指令会在此元素上设置
href
属性。

我猜想点击时会引发相同的异常,但事件仍然冒泡,然后执行默认行为并更改页面位置。由于这种情况发生得非常快,您不会注意到错误。

即使在页面重新加载后也尝试保留控制台日志,错误应该存在。


0
投票

我遇到了 Angular 应用程序意外重新加载的问题。问题出在

type="submit"
。我已将其更改为
type="button"
,问题就消失了。 是:

<button type="submit" (click)="onAddItem()" >Add</button>

成为:

<button type="button" (click)="onAddItem()" >Add</button>
© www.soinside.com 2019 - 2024. All rights reserved.