【问题标题】:Angular2 - Routing for file downloadAngular2 - 文件下载路由
【发布时间】:2017-05-10 15:31:32
【问题描述】:

我有一个 Angular2 应用程序,但在下载文件时遇到了一些问题:

应用程序在我的机器上本地运行:

http://localhost:4200

所有文件都位于:

myapp/src/assets

页面中呈现的文件url示例为:

http://localhost:4200/assets/OffertFile/2234/Offerta%20iniziale.xlsx

这就是我在 html 组件中生成链接的方式:

<a href="{{v.excel_Path}}/{{v.excel_FileName}}" download target="_self">
    <i class="fa fa-download fa-2x text-primary" aria-hidden="true"></i>
</a>

如果我尝试下载文件,我会得到一个包含 index.html 页面文件内容的文件,而不是正确的文件本身。

我认为这是一个路由问题。

我该如何解决这个问题?

谢谢

【问题讨论】:

  • 如何在控制器中生成变量“v”?
  • 我使用了一个服务,路径是正确的,它呈现:“localhost:4200/assets/OffertFile/2234/Offerta%20iniziale.xlsx”,就像我在帖子中写的那样......
  • 我面临同样的问题。你有没有为此想出解决方案?
  • 嗨 Bruno,你必须使用 [routerLink] 标签而不是 href

标签: angular angular2-routing


【解决方案1】:

这个问题可能是由两个原因引起的:

  1. 检查引用的文件是否确实存在于您的 Web 服务器上的文件系统中。
  2. 区分大小写 - 检查链接中的文件名是否与文件系统中的文件名大小写完全相同(大写、小写或组合)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多