返回顶部
首页 > 资讯 > 移动开发 >使用uni-app的uni.chooseImage获取的图片路径,存储到数据库中,无法在前端展示该路径的图片
  • 311
分享到

使用uni-app的uni.chooseImage获取的图片路径,存储到数据库中,无法在前端展示该路径的图片

数据库intellijideahtmljavascript小程序 2023-09-08 14:09:12 311人浏览 八月长安
摘要

html,js,uni-app, 首先我在uni-app中使用如下方法添加图片 uni.chooseImage({count: 1, //count: 6, //默认9sizeType: ['original', 'compressed']

html,js,uni-app,

首先我在uni-app中使用如下方法添加图片

uni.chooseImage({count: 1, //count: 6, //默认9sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有sourceType: ['album'], //从相册选择success: function(res) {console.log(JSON.stringify(res.tempFilePaths));}});

通过uni.chooseImage获取的图片路径如图所示,是“Http://tmp/wx……”开头的

之后在浏览器界面,想展示该路径图片

结果如下,路径正确,但是不显示图。

 原因如下:image-tools - DCloud 插件市场

uni-app、微信小程序和5+APP使用的路径不支持网络路径

解决方法:

我的做法是把路径转化为base64,这个格式的图片可以在前端展示~

下载插件,点击绿色的,然后打开,选择你的项目,这个真的很快(我经常担心插件安装过程麻烦,但这个真的很快)image-tools - DCloud 插件市场

 

 之后,项目中会出现这个

修改uni-app中代码,先引入 

import {pathToBase64} from '../../js_sdk/mmmm-image-tools/index.js'

 接着修改uni.chooseImage里代码

uni.chooseImage({count: 1, //count: 6, //默认9sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有sourceType: ['album'], //从相册选择success: function(res) {console.log(JSON.stringify(res.tempFilePaths));//解决跨越问题,让通过微信上传的图片你能够展示在浏览器前端uni.getImageInfo({src: res.tempFilePaths[0],success: (path) => {pathToBase64(path.path).then(base64 => {console.log("base64="+base64); // 这就是转为base64格式的图片}).catch(error => {console.error(error)})}})}});

 输出结果如下,真的很多,从划红线的地方往后(展示不全)

 3、最开始数据库设计的是varchar,但明显报错了,在微信开发工具的控制台提示“length”的问题,这里没有截图。

idea项目中,提示如下报错

 所以这个时候需要修改数据库中字段类型,通过借鉴广大网友的文章。尝试了mediumtext类型。

不知道为啥,遇到了一些情况。

后来尝试了longtext,实现了想要的效果,(字段长度刚开始我设置了20000,但保存后是0,应该不用特意设定就可以)。

 

好啦,这样就可以把数据存入数据库中了

 

 最后前端效果如图所示

 参考了一些文章,如下:

根据这篇,解决了数据库字段长度问题

图片以base64格式存储进数据库 字段使用类型_Architect_csdn的博客-CSDN博客_base64 字段类型

根据这两篇,提供解决问题思路,学会转base64格式

image-tools - DCloud 插件市场

了解了base64格式的数据开头部分的含义

在HTML中显示base64格式的img图片_viceen的博客-CSDN博客_html加载base64图片

这篇,特有意思。跟着方法3做了,结果往下一滑,更新后说H5上不能转了╮(╯▽╰)╭

小程序 本地临时文件tempFilePaths和base64互转_liu__software的博客-CSDN博客 

来源地址:https://blog.csdn.net/qq_43300979/article/details/124185460

--结束END--

本文标题: 使用uni-app的uni.chooseImage获取的图片路径,存储到数据库中,无法在前端展示该路径的图片

本文链接: https://lsjlt.com/news/400197.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作