如何解决答题小程序大小超过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";
相关推荐
花间相见16 分钟前
【LangChain组件03】—— LangChain Agents 执行与状态:工作流程与状态管理实战
java·前端·langchain
kyriewen32 分钟前
面试官让我用 AI 重构一个 8 年陈的 React 组件——他说他不看代码,只看我会不会拆
前端·javascript·面试
计算机魔术师32 分钟前
700吉瓦「幽灵用电」:美国AI数据中心的抢电闹剧正在失控
前端
IT_陈寒40 分钟前
JavaScript数组排序踩的坑,差点让我加班到凌晨
前端·人工智能·后端
风骏时光牛马42 分钟前
提示词工程:大模型交互的核心构建艺术
前端
今日无bug1 小时前
大模型的回答是怎么一个字一个字蹦出来的?前端流式输出解析
前端·llm·agent
计算机魔术师1 小时前
Anthropic 复盘 Claude 模型越权访问真实系统事件并改进对齐与安全措施
前端
掘金者阿豪2 小时前
Seedance 2.0/2.5 虚拟素材能跨 Key 共用吗?一次讲清 Asset ID、账号隔离与 SaaS 素材架构
前端·后端
用户50093768390392 小时前
热敏小票 Web 打印:我在 58/80mm 上折腾的两周
前端·vue.js
XGM2 小时前
一个前端新手的"顿悟"时刻:DOM树、渲染原理和JS动态渲染
前端