打造一款科学计算微信小程序
发布于 4 年前 作者 yongzhao 3486 次浏览 来自 分享

直接体验

概述

小程序的特性比较适合随用随走,那么使用小程序作为科学计算器的载体,会比网页实现体验更佳,且便于分享,接下来简述一下对于本想法的实现

关键分析

  • 功能需求
  • 用户输入
  • 结果显示
  • 如何计算

功能需求

微积分计算、矩阵计算、画图

用户输入

无论是早期的计算器,还是现代的计算器应用,如果不提供键盘,而是让用户自由输入,体验都会变得很糟糕,那么第一个想法就是,放弃原生键盘,所有的输入都来自于小程序模拟出的键盘。最后输入将会是一个数组。

光标

既然键盘模拟了,当然输入的显示也要设计,小程序的wxml不支持动态dom,这很烦,无法进行嵌套了,在考虑了canvas绘制和view表现后,还是放弃了canvas,决定由view实现,顺手光标的闪烁较为简单。

表达式解析

上面说了,我们只需解析好输入的数组发给工具类,再显示结果就好了。数组的元素包含type和text,以便接下来的解析。

结果显示

由于结果的复杂性,将以latex格式输出,但小程序不能很好的表示latex,只好后端生成latex图片在小程序显示,同时也方便在小程序上预览。

如何计算

那么如何计算呢,简单的计算当然小程序本地即可得出结果,复杂的只能求助后端,毕竟后端可以搭建各种开源的计算服务提供接口。

核心代码实现

wxml

css

js

等待整理

1 回复

写的真棒

回到顶部