老师好,动态加载图片的时候报错了
来源:3-8 ESLint 配置实践

weixin_慕桂英5062843
2023-03-03
1回答
-
keviny79
2023-03-03
vite 版本升级后,书写发生了变化,下面有两处修改改后再测下:
import storage from 'good-storage'
export class LmgLoader {
static imgList: Record<string, any> = {}
static async getimgList() {
this.imgList = storage.get('imgList') || {}
// 修改1:
if (!LmgLoader.imgList || !LmgLoader.isNotEmptyimgList()) {
this.imgList = LmgLoader.getImgAll()
storage.set('imgList', LmgLoader.imgList)
}
}
static isNotEmptyimgList() {
return Object.getOwnPropertyNames(LmgLoader.imgList).length
}
static getImg(name: string): string {
//console.log('name:', name)
// LmgLoader.imgList = LmgLoader.isNotEmptyimgList() ? LmgLoader.imgList : storage.get('imgList')
return LmgLoader.imgList[name] //
}
static getImgAll(): any {
const imgList: any = {}
// 修改2:
const viewImgModules: Record<string, any> = import.meta.glob(`../assets/img/**/**/*.png`, { eager: true })
// import.meta.globEager(`../assets/img/**/**/*.png`)
for (const path in viewImgModules) {
if (viewImgModules[path].default) {
const pathName = path.substring(path.lastIndexOf('/') + 1)
imgList[pathName] = viewImgModules[path].default
}
}
storage.set('imgList', this.imgList)
return imgList
}
}
export default LmgLoader.getImg
00
相似问题
回答 1
回答 1