微信小程相对图片路径_微信小程序----相对路径图片不显示

出现场景

在本地调试的时候本地图片显示,但是手机浏览的时候本地图片不显示。

出现图片不显示的原因

小程序只支持网络路径和base64的图片。图片转base64在线工具

处理方法

将图片都放到服务器,然后直接采用网络路径。

1.1 优点是能够放大量的图片。

1.2 缺点是有时开发中有大量的小图片,或者修改小图标,对于开发者来说,更换会很麻烦。

将图片都转换成 base64 的图片保存,使用时直接引入。图片转base64在线工具

2.1 优点是方便快捷,开发过程中容易更换。

2.2 缺点是由于微信小程序规定了每个文件不能超过500MB,超过另行打包。所以如果图片过大,或者量过大,都不方便。

优化处理

将网络路径图片和 base64 的图片结合使用。图片转base64在线工具

开发大图片(轮播等)或图片量大(商品图片等)的场景时,采用网络路径。

优点是产品发布后方便图片的上下架,不用再提交审核,使用静态图片的尴尬和麻烦。

开发logo、导航等小图片时,采用 base64 的图片。图片转base64在线工具

优点是开发时方便开发者更换,引入方便;转换快捷,用图片转base64在线工具可直接转换;不用开发时总是往服务器上传图片。

实践开发

开发效果图

首页的轮播和网吧列表都是采用的网络路径,订单页面的右箭头和更多商品图标都是采用的 base64 图片。

开发代码

1. 首页轮播和店铺列表JS

const app = getApp();

const urlList = require('../../utils/config.js');

Page({

data: {

supplierList: [],

iconList: iconList,

bannerInfo: null,

indicatorDots: true,//是否显示面板指示点

autoplay: true,//是否开启自动切换

interval: 3000,//自动切换时间间隔

duration: 500,//滑动动画时长

bannerList: [],

shopList: [],

currentPage: 1,

pageSize: 10,

total: 1000,

myList: []

},

onLoad(){

// 获取分享信息

this.getShare();

},

onShow(){

// 获取轮播列表

this.getBannerList();

// 获取当前地址

wx.getLocation({

success: res => {

if (res.errMsg == 'getLocation

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值