uni-app 编译的快手小程序中使用分包功能,体验版中分包页面无法打开

发布于 1周前 作者 itying888 来自 Uni-App

uni-app 编译的快手小程序中使用分包功能,体验版中分包页面无法打开

项目信息
产品分类 uniapp/小程序
PC开发环境操作系统 Mac
PC开发环境操作系统版本号 14.6.1
第三方开发者工具版本号 1.63.0-2cd3c10-arm64
基础库版本号 1.99.0
项目创建方式 CLI
CLI版本号 3.0.0-alpha-3090020230826001

操作步骤:

正常配置分包 在 manifest.json中的mp-kuaishou 中配置"optimization":{ “subPackages”: true } page.json 中也配置了路由 “subPackages”: [ { “root”: “packages”, “pages”: [ { // 分包路由 } ] 然后上传代码到后台,查看预览码

预期结果:

正常打开分包页面

实际结果:

分包页面打不开,提示加载失败,请刷新或退出重试

bug描述:

配置了分包之后编译到快手平台,本地开发,预览时主包跳分包都没问题,上传模版审核生成体验码之后,进入小程序,分包页面打不开,提示加载失败,请刷新或退出重试。app.json 中分包路由也都生成了。 其他端微信,抖音,小红书都正常,只有快手打不开


1 回复

在uni-app中编译快手小程序并使用分包功能时,如果遇到体验版中分包页面无法打开的问题,通常是由于配置错误或代码结构问题导致的。下面我将提供一个基本的分包配置示例,以及一些可能帮助你排查和解决问题的代码片段。

分包配置示例

首先,确保你的manifest.json文件中正确配置了分包信息。以下是一个基本的配置示例:

{
  "mp-kuaishou": { // 快手小程序配置
    "optimization": {
      "subPackages": [
        {
          "root": "subpkg1/", // 分包根目录
          "pages": [
            "pages/sub1/sub1" // 分包页面路径
          ]
        },
        {
          "root": "subpkg2/",
          "pages": [
            "pages/sub2/sub2"
          ]
        }
      ]
    }
  }
}

代码结构

确保你的项目目录结构符合分包配置。例如,对于上面的配置,你的项目目录应该类似于:

project-root/
├── pages/
│   ├── index/
│   │   └── index.vue
│   └── ...
├── subpkg1/
│   └── pages/
│       └── sub1/
│           └── sub1.vue
├── subpkg2/
│   └── pages/
│       └── sub2/
│           └── sub2.vue
├── manifest.json
└── ...

跳转分包页面

在跳转到分包页面时,确保路径正确。例如,在主包中的某个页面跳转到subpkg1中的sub1页面:

uni.navigateTo({
  url: '/subpkg1/pages/sub1/sub1'
});

排查问题

  1. 检查路径:确保所有路径都是正确的,包括分包配置中的路径和页面跳转时的路径。
  2. 编译配置:检查manifest.json中的快手小程序配置是否正确,特别是optimization.subPackages部分。
  3. 快手开发者工具:使用快手小程序开发者工具查看控制台输出,检查是否有错误信息。
  4. 清理缓存:尝试清理快手小程序开发者工具的缓存,并重新编译上传。

通过上述步骤和代码示例,你应该能够排查并解决uni-app编译的快手小程序中分包页面无法打开的问题。如果问题依旧存在,建议详细检查快手小程序的开发文档,或向快手开发者社区寻求帮助。

回到顶部