Licia 是一套在开发中实践积累起来的实用 JavaScript 工具库。该库目前拥有超过 300 个模块,同时支持浏览器、node 及小程序运行环境,提供了包括日期格式化、md5、颜色转换等实用模块,可以极大地提高开发效率。
因为小程序运行的是 JavaScript 代码,传统前端所使用的 JS 库理应也能够被用在小程序中才对。然而,经过实际测试,你会发现有相当一部分 npm 包是无法直接在小程序中跑起来的。比如前端工程师十分常用的 lodash,在小程序中引入会报错。
为什么会这样?
主要原因就是绝大部分库的开发者在设计时只会考虑两种运行环境,浏览器和 node,而小程序并不会在其考虑范围内。因此,只要开发者的 JS 代码使用了只有浏览器与 node 中才有的接口,如 DOM 操作、文件读写等,该库就不能正常地运行在小程序环境中。除此之外,假如他们使用了小程序禁用的功能,例如全局变量与动态代码执行,这时候代码跑在小程序环境也会出错。
1、 安装 npm 包
npm i miniprogram-licia --save
2、点击开发者工具中的菜单栏:工具 --> 构建 npm
3、直接在代码中引入使用
const licia = require('miniprogram-licia');
licia.md5('licia'); // -> 'e59f337d85e9a467f1783fab282a41d0'
licia.safeGet({a: {b: 1}}, 'a.b'); // -> 1
使用 npm 包的方式会将所有功能引入到代码包中,大概会增加 100 kb 的大小。如果你只想引入所需脚本,可以使用在线工具生成定制化 util 库。
1、访问 https://licia.liriliri.io/builder.html
2、输入需要的模块名,点击生成下载 util.js 。
3、将生成的工具库拷贝到小程序项目任意目录下然后直接引入使用。
const util = require('../lib/util');
util.wx.getStorage({
key: 'test'
}).then(res => console.log(res.data));
1、目前拥有 270 多个模块可在小程序中正常运行,而 underscore 只有 120 个函数左右。
2、与 lodash 相比增加了不少更加实用的函数,比如 md5、atob、btoa、Emitter、dateFormat 等。
3、可以直接在小程序中引入运行,不像 lodash 需要进行一定的修改才能正常跑在小程序中。
4、定制化生成可以使用更小体积的工具库,这在限制了代码包大小的小程序中十分有用。
这里只简单列出函数及其功能介绍,详细的用法请访问官网查看。
注:模块名右边有小程序图标即表明可以在小程序中使用。
global
对象,对于浏览器,取 window
对象。这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.