将字符串翻译为可下载的txt文件Angularjs

时间:2016-10-28 14:16:07

标签: javascript angularjs download

我有一个使用角度重复

生成的表格
<tr ng-repeat="result in vm.results">
    <td>
        <a download="Generated.txt" href="data:text/plain;charset=utf-8," + {{result.generatedOutput}}>Download</a>
    </td>
<tr>

我检查了结果和result.generatedOutput有一个值。但是,当我下载文件时,它是空白的。如果我按照以下方式对值进行硬编码,则可以正常工作

<a download="Generated.txt" href="data:text/plain;charset=utf-8,sosososososlaksakldsa">Download</a>

2 个答案:

答案 0 :(得分:1)

字符串应添加到href,如下所示:

<tr ng-repeat="result in vm.results">
    <td>
        <a download="Generated.txt" href="data:text/plain;charset=utf-8,{{result.generatedOutput}}">Download</a>
    </td>
<tr>

另请注意,在Chrome中,此方法不起作用,请在此处阅读更多内容: Force download of 'data:text/plain' URL

答案 1 :(得分:0)

使用ng-href代替href。这将强制仅在Angular解析文件时构造href属性,该文件包含{{}}值。 More about ng-href here

<a download="Generated.txt" ng-href="data:text/plain;charset=utf-8,{{result.generatedOutput}}">Download</a>