乐趣区

关于uniapp:uniapp项目实践总结二十二分包优化和游客模式

导语:这篇次要介绍利用分包和游客模式相干的内容。

目录

  • 利用分包
  • 游客模式

利用分包

微信对于小程序的打包压缩后的代码体积是有限度的,网页和 APP 也能够实用分包性能,因而须要进行分包增加以及分包优化。

分包增加

pages.json 文件中增加分包的信息。例如:有一个名叫 user 的分包,外面有一个文件是index.vue,那么分包配置就是:

{
  "pages": [
    {
      "path": "pages/index/index",
      "style": {"navigationBarTitleText": "首页"}
    }
  ],
  "subPackages": [
    {
      "root": "user",
      "pages": [
        {
          "path": "index",
          "style": {"navigationBarTitleText": "分包首页"}
        }
      ]
    }
  ]
}

配置实现后该文件的拜访地址就是 /user/index,其中的user 是在根目录下寄存的。

分包优化

增加配置

分包优化的办法是在 manifest.json 文件中对应的平台增加以下配置:

例如:mp-weixin平台下增加分包优化。

{
  "mp-weixin": {
    "optimization": {"subPackages": true}
  }
}

注意事项

  • 目前只反对 mp-weixinmp-qqmp-baidump-toutiaomp-kuaishou 的分包优化;
  • 分包目录内搁置的动态资源不会被打包到主包中,也不可在主包中应用;
  • 当某个 js 仅被一个分包援用时,该 js 会被打包到该分包内,否则仍打到主包(即被主包援用,或被超过 1 个分包援用);
  • 若某个自定义组件仅被一个分包援用时,且未放入到分包内,编译时会输入提示信息;

微信小程序

目前微信小程序分包大小有以下限度:

  • 整个小程序所有分包大小不超过 20M;
  • 单个分包 / 主包大小不能超过 2M;

游客模式

在一些平台,比方微信小程序和苹果 ios 利用商店,上架的利用肯定要提供游客模式才能够进行审核通过。

如何实现游客模式呢,上面就来简略实现一下。

服务端配置

能够通过动静配置来关上或敞开游客模式。

例如:默认开启游客模式。

{"vistor": true}

客户端配置

客户端依据服务端的配置来设置是否开启游客模式。

逻辑剖析

  • 开启游客模式后,启动利用就应该能够进入到应用程序的主页面,而后能够随便旅行和应用,当遇到须要登录能力拜访的中央,再跳转到登录页面;
  • 敞开游客模式后,启动利用后须要先登录账号,而后才能够拜访利用内的页面或者应用利用提供的服务和性能;

设置缓存

启动利用获取服务端配置后能够设置缓存数据:

// 接口获取到的数据
let config = {vistor: true,};
// 存入本地
uni.setStorage("vistor", config.vistor);

获取缓存

在要拜访的页面触发须要登录能力应用的性能之前,先判断是否开启了游客模式,如开启再提醒并跳转登录。

// 获取本地游客模式
let vistor = uni.getStorage("vistor");
// 获取接口,如返回 401,则须要登录
let login = true;
// 游客模式已开启并且须要登录则跳转登录界面
if (vistor && login) {
  uni.navigateTo({url: "/pages/login",});
}

最初

以上就是分包优化和游客模式的次要内容,有不足之处,请多多斧正。

退出移动版