Thu Jul 01 2021 01:38:12 GMT+0800
Lodash 只是对标准 JavaScript 内置对象的扩展,不涉及其他像 BOM、DOM 这类 API,所以是可以将它放进 WPS JS 宏的 Module
(模块)中的,下面介绍怎么操作:
前提条件
- Lodash 发行版代码,下载地址:https://lodash.com/
如果要按需自定义构建打包,参考https://github.com/lodash/lodash/wiki/Build-Differences
使用 Lodash 源码
我还不知道在 WPS 中怎么引入外部资源,所以我们暂时直接将源码放进 Module 中,然后直接使用 Lodash 的方法。完整构建的 Lodash 有 500多KB,你也可以使用 core build 版本(仅包含 Lodash 核心);当然,你也可以进行自定义选择性构建打包版本(选择性使用部分方法而不是所有的 Lodash 方法函数)。
自定义构建版本需要自己构建,通过
lodash-cli
进行构建、打包。
npm install -g lodash-cli
然后通过 lodash 命令进行构建自己的版本。比如:
lodash core -o ./lodash/core
构建完成之后,你会得到两个文件:
- core.min.js
- core
名字
core
与你输出的位置有关,我用了 “-o ./lodash/core
” 所以才会有这两个文件。具体用lodash -h
查看构建说明。
这两个文件中,我只使用 core
这个,它是未压缩的部分,而 core.min.js
是已经压缩(uglify)的版本。经测试,两个都是能工作的。
最好放在单独的模块中
Lodash 的源码还是比较大的,为了区别于自己的宏代码以及便于管理,最好将它单独放在一个模块里面。
使用
lodash 默认的别称为 “_
”,意义和作用和 JQuery 的 "$
"一样。
部署好之后,就可以使用了。
立即窗口测试
_.keys({a:1}) // a
宏内测试
function _m_isItWorks(){
Console.clear()
let foo = _.keys({a:1}) // []
Console.log(foo[0]) // a
Console.log(JSON.stringfy(foo)) // ["a"]
}
到这里 Lodash 就算部算署完成了,开始展现你的创造力吧……
更多的内容可参考 Lodash 的文档。https://lodash.com/
不理想的编程体验
其实使用起来并不好——没有键入提示(参考),这主要是 WPS JS宏编辑器不“智能”,加上它的一点漏洞,可能不容易发现错误所在。不过,只要你是资深的 Lodash 使用者还是能轻松驾驭的。