H5调用原生客户端接口下载附件

在移动前端开发过程中,需要实现附件下载功能。如果具有附件下载功能的页面是通过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是附件的相对地址,使用后端接口返回的值即可。

相关推荐
前端之虎陈随易9 小时前
编程语言级别的Skill市场,AI Agent 的未来形态
前端·vue.js·人工智能·typescript·node.js
一路向北he9 小时前
字节钢铁军团--“提供情境,而非控制”
java·开发语言·前端
kyriewen9 小时前
豆包和千问同时关了智能体,我用它们搭的 3 个自动化全废了——迁移方案整理
前端·javascript·ai编程
前端一小卒9 小时前
我用 TypeScript 从零手写了一个 Claude Code,然后发现它的核心只有 30 行
前端·agent
铁皮饭盒10 小时前
用 Bun.cron 定时 7 月 7 日,为啥? 看图1
javascript
大圣编程11 小时前
Python中continue语句的用法是什么?
开发语言·前端·python
yuhaiqiang11 小时前
随手 vibecoding 的浏览器插件已经 6000 多次下载,聊聊他的产品设计
前端·后端·面试
之歆12 小时前
Vue商品详情与放大镜组件
前端·javascript·vue.js
再吃一根胡萝卜12 小时前
如何把小米 MiMo 接入 CodeBuddy,打造私有 Agent
前端
负责的蛋挞13 小时前
异步HttpModule的实现方式
java·服务器·前端