在移动前端开发过程中,需要实现附件下载功能。如果具有附件下载功能的页面是通过webview嵌入到原生客户端(IOS或者Android)中的二级页面(即H5),则需要间接调用原生方法实现此功能。
本文封装了一个方法用来实现此功能:
js
const downloadResource = (url, name, type) => {
if(window.locationjs) window.locationjs.downloadFile({
downloadUrl: `${resourceBaseURL}${url}`,
fileName:`${name}.${type}`
});
};
html
<div
className="detail-attachment"
onClick={() => void downloadResource(attachmentUrl, name, type)}
>
其中resourceBaseURL需要后端提供,url是附件的相对地址,使用后端接口返回的值即可。