微信小程式開發中遇到的幾個小問題

ccneko發表於2020-07-11

本地圖片不顯示,開發工具執行是沒問題的,但真機除錯卻顯示不了

item.img = '/goods/img/圖片.png'
<image src="{{item.img}}" class="image"></image>
經過仔細觀察發現,路徑是沒問題的,問題在於圖片名不能是中文的,把它改成字母+數字就好了。

使用FileSystemManager.readdir(Object object)方法讀取本地資料夾中的所有圖片,報錯'readdir:fail no such file or directory'

dirPath = '/goods/img'
同樣在開發工具上執行是沒問題的,但真機除錯就報錯了。
問題所在:將dirPath設成'/',讀取該資料夾下的所有檔名後得:

0: "app-service.js"
1: "app-config.json"
2: "app-service.js.map"
3: "page-frame.html"

真機除錯時,readdir方法的根目錄並不是專案的根目錄

解決方案:暫無好的解決方法。(暫時用暴力法解決了:直接存下所有圖片的名稱,讀取後再分割拼接路徑。imgNames = '0.png,1.png,2.png'

在js裡讀取其它json檔案的內容

短時間內沒找到讀取方法,因此用了替代方案:
將資料存在js檔案裡,設為一個變數,再用require方法來引用這個js檔案。

let list = [
  {
    "id": "1",
    "name": "測試產品名字",
    "category": "分類1",
    "price": "123.5",
    "description": "產品的簡單介紹",
    "img": "0.png",
  },
  {
    "id": "2",
    "name": "測試產品名字2",
    "category": "分類2",
    "price": "125.5",
    "description": "產品的簡單介紹",
    "img": "1.png,2.png,3.png,4.png",
  },
  ...
]
module.exports = {
  goodsList: list
}
let goodsInfo = require('../../goods/info.js');
let list = goodsInfo.goodsList
for(let goods of list){
    console.log(goods)
}

相關文章