需求:前端通過瀏覽器直接下載public下的文件。
思路:靜態(tài)資源可以利用a標(biāo)簽或者借助函數(shù)方法下載。
將靜態(tài)資源文件直接放于public目錄下,打包時(shí)public文件不會(huì)被編譯。
1.利用a標(biāo)簽下載
<a href="/HCWebSDKPlugin.exe" download="HCWebSDKPlugin.exe">插件下載</a>
靜態(tài)資源的路徑,在public文件夾下路徑是/文件名
2.借助函數(shù)方法下載
/*
@param {string} url 靜態(tài)資源url
@param {string} filename 靜態(tài)資源文件名
@param {string} target
*/
const fileUrlHandled = ({ url, filename, target }) => {
const downloadElement = document.createElement('a')
downloadElement.style.display = 'none'
downloadElement.href = url
if (target) {
downloadElement.target = '_blank'
}
downloadElement.rel = 'noopener noreferrer'
if (filename) {
downloadElement.download = filename
}
document.body.appendChild(downloadElement)
downloadElement.click()
document.body.removeChild(downloadElement)
}