damdmen
damdmen
  • 发布:2020-02-11 13:15
  • 更新:2020-04-17 22:37
  • 阅读:3582

uniapp选取文件,获取到文件路径后,怎么打印到页面上?

分类:uni-app

使用这个帖子中
https://ask.dcloud.net.cn/article/35855

的方法选取系统文件,返回文件路径

但是因为选取时app hide 处于后台,这时如果直接在
pickFile.PickFile( function ( audioSrc ){
this.src = audioSrc //把得到的文件路径打印到vue页面上

会有问题,自己试了下先把路径用uni.setStorageSync把得到的路径存起来,然后用onShow()监听APP回到前台时取值

还是不行,报错 this.src 未定义

请问这种情况应该怎么解决?

以上是采用Native.js的原生方式,如果要避开这个问题,是不是只能采用
https://ask.dcloud.net.cn/article/id-35547__page-3

这里的写的webview或者H5的方式选取待上传的文件,来回避开app切回前台之前无法操作页面这个问题?

2020-02-11 13:15 负责人:无 分享
已邀请:
ahkoky

ahkoky - 从此吾剑将随汝同在,汝之命运将与吾共存

this.src 应该用自己声明的变量就可以吧,audioSrc 这个才是路径
var filesrc = '';
$('#add').on('tap', function(){
pickFile.PickFile(function(audioSrc){
filesrc = 'file://' + audioSrc;
console.log(filesrc)
// _this.audioSrc = 'https://img-cdn-qiniu.dcloud.net.cn/uniapp/audio/music.mp3'
// 这里就会得到 你选择的文件路径。拿到路径后,你可以用uni.uploadFile 进行上传。
}, 'audio/');
//这里第一个参数是 回调函数,第二个是你要选择的文件类 "image/
","audio/","video/;image/*"
});

  • damdmen (作者)

    我是按这个写法写的,但是获取到的是null

    后来在miui6里获取成功了,但是拿三星note5测试还是获取到null值,还好我废手机多,继续测试TT

    谢谢你!~

    2020-04-17 12:41

damdmen

damdmen (作者) - 社交app创业中,求靠谱合伙人

问题解决了,是自己选取应用程序有问题,只要选择用系统自带的文件管理器打开,就可以正常获取到地址

  • jtshushu

    求代码 解决

    2020-06-08 11:40

该问题目前已经被锁定, 无法添加新回复