收藏
回答

主包太大了,可以将组件components设为分包吗?

主包太大了,可以将组件components设为分包吗?我是uniapp的项目

这样加上马上就会报错

各位大佬帮忙看下


回答关注问题邀请回答
收藏

2 个回答

  • H1HAO 🇨🇳
    H1HAO 🇨🇳
    06-04

    uniapp项目需要这样引入吗,一般建议主包就写一个index页面,然后其它的页面全部放分包里面,组件也是在分包里的,主包的组件不用写公共components

    如果一定要异步加载分包可以参考下面,当前建议还是减少主包页面,尽量只放一个页面,登录啥的都可以放分包,如果是有自定义弹窗这种公用组件并且使用量很大的情况下在使用全局挂载否则哪用到哪单独引入即可

    ,我以前也是全部组件和页面全部写主包,后来提交不了代码,硬生生花个把小时去分包,后来主包就不在写页面了

    uni.loadSubpackage({
      name: 'subpackageA', // 分包的名字,对应 pages.json 中配置的 root 字段
      success: function () {
        console.log('分包加载成功');
      },
      fail: function (err) {
        console.log('分包加载失败', err);
      }
    });
    


    06-04
    有用
    回复 3
    • 小杜
      小杜
      06-04
      这个index要怎么设置呢,页面内容空,只运行uni.loadSubpackage,加载原来的主包吗,成功后跳转到真正主页吗
      06-04
      回复
    • 小杜
      小杜
      06-04
      这样做了,tabBar要怎么设置呢
      06-04
      回复
    • H1HAO 🇨🇳
      H1HAO 🇨🇳
      06-06回复小杜
      主页就是index,如果有tabBar页也放主包,打开就是index也不用去加载分包,只是说你现在需要把除了index和tabBar的页面和组件/方法全部都放到分包就行,工作量会很大,但是这是必要的操作。以后维护都方便
      06-06
      回复
  • jojoRiny
    jojoRiny
    06-04

    可以采用异步分包解决https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/async.html

    06-04
    有用
    回复 2
登录 后发表内容