uniapp引入分包文件的正确方法是什么

在uniapp项目中,我尝试引入分包文件但一直不成功,请问正确的操作方法是什么?具体步骤是怎样的?需要配置哪些文件?有没有常见的坑需要注意?

2 回复

pages.json中配置subPackages字段,按目录结构分包。例如:

{
  "subPackages": [{
    "root": "subA",
    "pages": [{
      "path": "index",
      "style": { ... }
    }]
  }]
}

注意主包不能引用分包的组件和JS文件。


在 UniApp 中引入分包文件,可以通过以下步骤正确配置:

1. 项目根目录创建分包文件夹

在项目根目录下创建分包文件夹,例如 subpackage

2. 配置 pages.json

pages.jsonsubPackages 字段中添加分包配置:

{
  "pages": [
    {
      "path": "pages/index/index",
      "style": { ... }
    }
  ],
  "subPackages": [
    {
      "root": "subpackage",
      "pages": [
        {
          "path": "subpage/subpage",
          "style": { ... }
        }
      ]
    }
  ]
}
  • root:分包根目录(如 "subpackage")。
  • pages:分包中的页面路径列表(相对于 root 目录)。

3. 编写分包页面

subpackage 目录下创建页面文件(如 subpage/subpage.vue),并正常编写代码。

4. 跳转到分包页面

使用 uni.navigateTo 或其他路由 API 跳转:

uni.navigateTo({
  url: '/subpackage/subpage/subpage'
});

注意事项:

  • 分包不能放在主包目录内(如 pages)。
  • 分包之间不能相互引用资源,但主包可引用分包的资源。
  • 分包大小限制:整个小程序所有分包大小不超过 20MB,单个分包不超过 2MB(微信小程序规范)。

通过以上步骤即可正确引入并使用分包,优化首屏加载性能。

回到顶部