back2wild
back2wild
  • 发布:2023-06-18 17:34
  • 更新:2023-06-21 17:56
  • 阅读:224

【报Bug】SSR模式下TabBar的icon图片加载失败

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 3.8.4

浏览器平台: Chrome

浏览器版本: 114

项目创建方式: HBuilderX

示例代码:

pages.json中关于tabBar中部分的如下:

"tabBar": {  
        "color": "#7A7E83",  
        "selectedColor": "#e84645",  
        "borderStyle": "black",  
        "backgroundColor": "#fefefe",  
        "list": [  
            {  
                "pagePath": "pages/index/index",  
                "text": "首页",  
                "iconPath": "static/home.png",  
                "selectedIconPath": "static/home-selected.png"  
            },  
            {  
                "pagePath": "pages/about/index",  
                "text": "关于",  
                "iconPath": "static/user.png",  
                "selectedIconPath": "static/user-selected.png"  
            }  
        ]  
    },

操作步骤:
  1. 新建带TabBar的HBuilder项目
  2. 配置好SSR

预期结果:

TabBar上的图片在SSR中能正常显示并加载

实际结果:

TabBar上的图片在SSR中不能显示

bug描述:

我有一个TabBar的H5项目,在SSR模式下,TabBar的图片加载失败。
查看源码发现TabBar的图片地址是相对路径,因为配置了uniCloud空间域名+SSR,此时使用相对路径就指向了SSR服务器的地址而不是前端静态资源的地址,就404了。如附件。

配置情况如下(xxx.com是示例域名):

  1. 前端网页托管域名:fe.xxx.com
  2. uniCloud空间域名:server.xxx.com
  3. 已配置好SSR云函数、PATH等
  4. 跨域已配置
  5. H5项目使用history的路由模式
2023-06-18 17:34 负责人:无 分享
已邀请:
DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

base怎么写的?

  • back2wild (作者)

    配置的【/】,默认的值。这个改成https://开头的地址的话,会不会导致本地调试时用不了最新代码?

    2023-06-26 18:09

  • DCloud_uniCloud_WYQ

    回复 back2wild: SSR base应该指向放静态资源的地址,静态资源和云函数返回的html是分开的

    2023-06-27 11:17

  • back2wild (作者)

    回复 DCloud_uniCloud_WYQ: 你是指vite.config.js中的base吗?这个我配置的是静态资源的地址,比如【https://static.abc.com】。manifest.json中也有个h5/router/base,这个我配置的是【/】

    2023-06-28 09:13

  • DCloud_uniCloud_WYQ

    回复 back2wild: 那看看网络请求,有没有发送加载tabbar图片的请求,有的话看下请求地址是什么

    2023-06-28 13:07

要回复问题请先登录注册