javascript - 从另一个目录 AngularJS 下载文件
问题描述
我正在开发一个 angularJS 项目,当用户单击下载按钮时,我必须触发 .txt 文件的下载。但是该文件存在于另一个目录中
<a ng-if="ErrorReport && ErrorMessage" href="../../C:\Users\Ali\Pictures\{{ErrorReport}}.txt"
class="btn btn-primary"
download>
Download error report
</a>
文本文件(要下载)是由 API 在运行时创建的错误报告,因此它始终具有动态名称,这就是我在 href 中使用 {{ErrorReport}} 的原因
知道如何给它引用应用程序目录之外的文本文件吗?
解决方案
在你的 html 中使用ng-href
而不是 href 并给出浏览器理解的绝对路径。ng-href
将有助于绑定范围内容。
<a ng-if="ErrorReport && ErrorMessage" ng-href="file:///C:/Users/Ali/Pictures/{{ErrorReport}}.txt"
class="btn btn-primary"
download>
Download error report
</a>
但它不会完全解决你的问题。您正在尝试从浏览器访问本地资源。为此,您需要允许浏览器访问您的本地文件。
转到 Chrome 可执行文件,然后在 cmd 下运行
.\chrome.exe --allow-file-access-from-files
现在您可以从本地访问文件,但又是Dangerous。
它将使您的文件系统保持打开状态,以便从浏览器访问。来自任何地方的文档都可以访问本地file:///
资源。
最好在文件所在的文件夹中运行服务器实例并访问该文件,例如http://localhost:8080/file.txt
.
您可以为此使用 chrome 扩展200 OK,或者您可以install
使用节点的包管理器全局 http-server,例如
npm install -g http-server
并从您的命令提示符下,您可以启动服务器
C:\Users\Ali\Pictures> http-server
希望这能解决你的问题!!
推荐阅读
- android - 警报管理器 setRepeat 中的问题
- powershell - 测试路径的问题
- excel - 在工作表上添加行时如何在宏中保持正确的单元格引用
- azure - 如何连接到虚拟机内的本地 Oracle 数据库?
- excel - 类属性错误“需要对象”,但工作正常
- python - Django:如何构建食堂菜单预订系统以避免共现预订?
- python - 如何在 Django 模板的结果页面中突出显示搜索到的查询?
- python - simplejson.errors.JSONDecodeError:预期值:第 1 行第 1 列(字符 0)
- drupal - 对此视图进行编码的最佳解决方案是什么?
- ios - 电子书购买支付网关 iOS