孤竹
孤竹
  • 发布:2023-04-15 15:07
  • 更新:2024-03-28 11:45
  • 阅读:567

【报Bug】vue3版本下,分包使用static 在微信小程序 路径会识别为根目录下static

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

HBuilderX类型: 正式

HBuilderX版本号: 3.7.9

第三方开发者工具版本号: 1.06.2303220

基础库版本号: 2.31.0

项目创建方式: HBuilderX

操作步骤:
  1. 使用vue3版本
  2. 使用分包,在分包下 创建 static 文件夹
  3. 在分包页面引入 第二步 创建的 static 下面的图片 (../static/xx.png)

预期结果:

正常显示图片 路径为 ../static/xx.png

实际结果:

图片未显示 路径为 /static/xx.png

bug描述:

vue3版本下 在分包 使用 图片 路径为 ../static (分包下面的 static) , 微信小程序会把路径识别为 /staic

vue2 版本都正常
vue3 版本 h5正常 微信小程序异常 app未测试

2023-04-15 15:07 负责人:YUANRJ 分享
已邀请:
孤竹

孤竹 (作者)

有没有人遇到啊

  • 9***@qq.com

    uniapp 都是直接写/static/xx.png

    2023-04-17 15:11

  • 孤竹 (作者)

    回复 9***@qq.com: 可以使用分包静态文件的,不会打包到主包

    2023-04-17 15:25

  • 4***@qq.com

    我也遇到了,一直在等官方更新

    2023-06-04 10:56

YUANRJ

YUANRJ

感谢反馈,后续修复,先使用绝对路径 "/package-a/static/xxx.png"

  • 4***@qq.com

    v3 下面, 动态的引入@/分包路径,还是不行, 静态的可以

    2024-02-28 09:47

孤竹

孤竹 (作者)

什么时候修复这个啊

特哦那首歌

特哦那首歌

这个bug好久好久了

da0ke

da0ke

等待修复

g***@qq.com

g***@qq.com

/**  
 * 获得当前组件下的分包资源  
 * @param p static下的父级路径  
 * @param avatar 文件名,或相对分包static的相对路径名  
 */  
export function _staticPath (p = '', avatar){  
  let path = `/pages-A/static${p}/${avatar?avatar:'def.svg'}`;  
  // 兼容h5  
  // #ifdef H5  
  path = `/@${path}`;  
  // #endif  

  return path;  
}

每个分包下做一个这样的函数,需要用分包私有static图片资源的就用函数获取,函数内进行h5兼容处理,默认是微信小程序分包资源获取逻辑。

<image :src="_staticPath('','details.png')" />

要回复问题请先登录注册