如何解决答题小程序大小超过2M的问题

近期开发了一款属于理科类的答题考试小程序,公式比较多,所以引用了katex 库。

katex 库的作用是解析 latex 公式生成虚拟 dom 树对象,将 dom 对象翻译成小程序的 rich-text 支持的 nodes 由小程序渲染。

但是,在答题小程序中不到5个页面会使用到这个库,使用频率并不高。由于 katex 库过大会大量占用小程序包体大小。

所以,就想到了分包这个解决方案。就是 katex 库放在分包中。

js文件

php 复制代码
const katex = require('../libs/katex/dist/katex.min.js')
const = latex:"x^2 + y^2 = z^2"
this.setData({
      nodes: katex.renderToString(latex, {
        displayMode: true, // 这个很重要,公式样式
        throwError: true, // 为true时,解析失败会抛出错误,否则会直接把错误信息解析为nodes结构展示
      })
});

wxml文件

xml 复制代码
<view class="container">
  <rich-text nodes="{{nodes}}"></rich-text>
  <view>{{latex}}</view>
  <textarea value="{{latex}}" bindinput="onInput" maxlength="1400"></textarea>
  <button bindtap="renderLatex">渲染</button>
</view>

wxss文件

scss 复制代码
@import "../libs/katex/dist/katex.wxss";
相关推荐
风骏时光牛马34 分钟前
智能赋能型AI办公一体化系统架构
前端
满栀5851 小时前
vue动态路由效果
前端·javascript·vue.js·前端框架·vue
土豆~1 小时前
文件名没后缀就打不开:前端文件预览的内容嗅探改造
前端·状态模式
Euato_Key2 小时前
全栈视野学习Cookie——理解 Cookie 的本质
前端
前端开发呀2 小时前
我的 AI 终端配置清单
前端
敲代码的玉米C2 小时前
测试一直在写你的真实数据根
前端·人工智能·架构
执子念的飞鱼2 小时前
File Viewer 进入 2K 节点后,我更在意这 3 条回归
前端·typescript
richdata2 小时前
动态OTB vs 静态OTB:鞋服零售该选哪种管理模式?
前端·html·零售
Jodie同志3 小时前
第16~23天:持久化、HITL、流式、MCP与安全
前端·后端·agent