中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序拼接圖片鏈接無底洞問題怎么解決

發布時間:2022-04-18 16:24:57 來源:億速云 閱讀:303 作者:iii 欄目:開發技術

今天小編給大家分享一下微信小程序拼接圖片鏈接無底洞問題怎么解決的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

背景

由于小程序包大小限制,我們一般都會將icon存放到cdn上。現在的開發流程需要在開發測試環境下圖片使用開發域名,線上使用生產域名。

問題重現

在小程序onLaunch的時候讀取配置文件獲取當前環境,并得到開發環境圖片域名:

./app.js

const { imgHostDev, imgHostProd, env } = require('./app.config.js')
App({
 onLaunch: function () {
 this.globalData.imageHost = env == 'dev' ? imgHostDev : imgHostProd
 },
 globalData: {
 imageHost: ''
 }
})

在頁面中:./pages/index/index.js

const app = getApp()

Page({
 data: {
 imgHost: ''
 },
 onLoad: function () {
 this.setData({
  imgHost: app.globalData.imageHost
 })
 }
})

./pages/index/index.wxml

<image src="{{imgHost}}/4jZ1L1qECEOsikW2JKsyHQ==/109951164304393164.jpg" mode="aspectFit"></image>

圖片渲染出來了,但是在開發者工具中有報錯

VM1334:1 Failed to load local image resource /4jZ1L1qECEOsikW2JKsyHQ==/109951164304393164.jpg
the server responded with a status of 500 (HTTP/1.1 500 Internal Server Error)

手機預覽就看不到圖片。。。

分析

看一下報錯信息,說本地不存在/4jZ1L1qECEOsikW2JKsyHQ==/109951164304393164.jpg這個文件。 也就是說頁面在執行onLoad之前就已經渲染了,這個時候imgHost值為空字符串,image的src拿到的圖片鏈接就是/4jZ1L1qECEOsikW2JKsyHQ==/109951164304393164.jpg,image標簽就以為這是本地圖片導致的。

修復

當然修復的方法有很多,

可以將imgHost在初始化的時候就賦值:

const app = getApp()

Page({
 data: {
 imgHost: app.globalData.imageHost
 },
 onLoad: function () {

 }
})

也可以在標簽中做判斷

<image src="{{imgHost ? imgHost + '/4jZ1L1qECEOsikW2JKsyHQ==/109951164304393164.jpg' : ''}}" mode="aspectFit"></image>

以上就是“微信小程序拼接圖片鏈接無底洞問題怎么解決”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武平县| 怀仁县| 信宜市| 沧州市| 凌源市| 龙江县| 文化| 巴南区| 老河口市| 武川县| 武功县| 漳浦县| 昭苏县| 高淳县| 安龙县| 称多县| 新泰市| 江川县| 农安县| 泰来县| 龙泉市| 高要市| 岳阳县| 湘乡市| 雷州市| 赣州市| 绥德县| 龙泉市| 固阳县| 手机| 昆明市| 湛江市| 汉川市| 涡阳县| 金寨县| 桓仁| 凤庆县| 邵阳县| 抚顺县| 九龙坡区| 淮北市|