【发布时间】:2017-06-10 19:30:21
【问题描述】:
我正在使用 Angular2,并且我有一种下载文件的方法...一切正常,但我使用的是 <a> 并使用 href='routetodownload' 下载了文件在某些情况下我被要求禁用此链接并且然后决定将<a> 更改为<button>(无论哪种方式,链接都作为按钮工作)并且这样做,而不是使用href 属性,我创建了一个函数。
HTML
<button (click)="download(url)">download</button>
打字稿
download(url) {
window.location.href = url;
}
但这会在firefox上导致奇怪的行为,当我点击下载时,会出现保存对话框,但在它后面,页面刷新。使用<a href='url'>时,出现另存为对话框时页面不刷新
只有在使用 Firefox 时才会发生这种情况...Edge 和 Chrome 在这两种情况下都可以正常工作。
我想知道为什么 window.location.href 会在 Firefox 上导致自动刷新。
如果有人对此有任何想法,请告诉我
更新
毕竟,问题出在NG Live Development Server(来自 angular-cli ng serve 命令)...我不知道为什么这只发生在 Firefox 上。问题是,我的应用程序托管在 IIS 上,使用它的解决方案没有刷新。
稍后我会和 angular-cli 团队的人一起检查一下这种行为可能是什么......
谢谢大家。
问候
【问题讨论】:
-
@GünterZöchbauer 我虽然是同样的事情,但仍然不明白为什么锚href没有发生这种情况......你知道如何避免这种行为吗?
-
@Pointy 谢谢,但没用。我什至没有表格是这个页面;)
标签: javascript angular firefox typescript