如何在前端提供实现下载文件
有这样一个需求,我所使用的框架是 react,需要给用户一个模板 excel 进行参考,因为就这一个文件要下载,所有就不放在后端,直接放在前端这边进行下载了。
假设这个文件的名称叫做 template.xlsx
具体的做法是:
- 把 excel 文件放到 public 文件夹中
- 这样就可以拿到下载链接了 ,
/template.xlsx
。 需要注意的是如果你的部署路径不是/
,而是类似于/webapp
这样的,你需要在前面加上它。也就是变成`/webapp/template.xlsx 这样部署的时候,下载路径才是正确的。 - 给 button 绑定 onClick 方法,这样点击的时候触发下载。用下面的写法,然后把 url 传进来就可以了。
也可以直接用这个 npm pkg,封装了下载方法 file-downloader