一直在挣扎,直到意识到如果我将单击事件绑定到组件中不存在的方法,Angular 就会刷新页面。我认为这是因为
routerLink
,因为如果我删除它,我会得到一个预期的错误 method checkUser() does not exist
。为什么会出现这种情况?
<a md-button
routerLink="articles"
routerLinkActive="menu-active"
(click)="checkUser()"
>Articles</a>
应用于
routerLink
元素的 a
指令会在此元素上设置 href
属性。
我猜想点击时会引发相同的异常,但事件仍然冒泡,然后执行默认行为并更改页面位置。由于这种情况发生得非常快,您不会注意到错误。
即使在页面重新加载后也尝试保留控制台日志,错误应该存在。
我遇到了 Angular 应用程序意外重新加载的问题。问题出在
type="submit"
。我已将其更改为type="button"
,问题就消失了。
是:
<button type="submit" (click)="onAddItem()" >Add</button>
成为:
<button type="button" (click)="onAddItem()" >Add</button>