#鸿蒙通关秘籍#如何处理鸿蒙Web组件中的文件上传请求?

HarmonyOS
4天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
时光笔SCM

在鸿蒙中,可以借助onShowFileSelector()接口处理来自前端的文件上传请求。开发者在应用侧需实现该接口以接收文件路径并将其回传到前端页面。具体实现方式如下:

bash import { webview } from '@kit.ArkWeb'; import { BusinessError } from '@kit.BasicServicesKit'; import { picker } from '@kit.CoreFileKit';

@Entry @Component struct WebComponent { controller: webview.WebviewController = new webview.WebviewController();

build() { Column() { Web({ src: $rawfile('local.html'), controller: this.controller }) .onShowFileSelector((event) => { const documentSelectOptions = new picker.DocumentSelectOptions(); let uri: string | null = null; const documentViewPicker = new picker.DocumentViewPicker(); documentViewPicker.select(documentSelectOptions).then((documentSelectResult) => { uri = documentSelectResult[0]; if (event) { event.result.handleFileList([uri]); } }).catch((err: BusinessError) => { console.error(Invoke documentViewPicker.select failed, code is ${err.code}, message is ${err.message}); }) return true; }) } } }

分享
微博
QQ
微信
回复
4天前
相关问题
鸿蒙应用如何处理异步请求
154浏览 • 0回复 待解决
HarmonyOS web组件上传文件
237浏览 • 1回复 待解决
Web组件如何实现文件上传功能?
402浏览 • 1回复 待解决