如何解决答题小程序大小超过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";
相关推荐
代码搬运媛6 小时前
Jest 测试框架详解与实现指南
前端
counterxing7 小时前
我把 Codex 里的 Skills 做成了一个 MCP,还支持分享
前端·agent·ai编程
wangqiaowq7 小时前
windows下nginx的安装
linux·服务器·前端
之歆8 小时前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
发现一只大呆瓜8 小时前
Vite凭什么这么快?3分钟带你彻底搞懂 Vite 热更新的幕后黑手
前端·面试·vite
Maimai108088 小时前
React如何用 @microsoft/fetch-event-source 落地 SSE:比原生 EventSource 更灵活的实时推送方案
前端·javascript·react.js·microsoft·前端框架·reactjs·webassembly
kyriewen10 小时前
产品经理把PRD写成“天书”,我用AI半小时重写了一遍,他当场愣住
前端·ai编程·cursor
humcomm10 小时前
元框架的工作原理详解
前端·前端框架
canonical_entropy10 小时前
Attractor Before Harness: AI 大规模开发的方法论
前端·aigc·ai编程
zhangxingchao11 小时前
多 Agent 架构到底怎么选?从 Claude Agent Teams、Cognition/Devin 到工程落地原则
前端·人工智能·后端