Vue3 组件二次封装 Element Plus Table

公司里后台系统用的 Element UI,有百来个表格(el-table),历史遗留原因都是直接使用 el-table 的。突然有一天,产品说表格要可以自定义列,让用户控制列的显隐固定排序,最好还能持久储存。使得我不得不进行二次封装来解决,那就顺便再轻微增强一下。

Demo:element-plus-table-proxy-demo

源码:aweikalee/element-plus-table-proxy-demo

阅读更多

将 JSON.stringify 改造成 JS.stringify

JSON.stringify 用来将 JS 变量序列化成 JSON 字符串。一般情况下普通使用是没什么问题了,但需求一旦超过了 JSON 的标准就会存在问题了。比如上篇文章中涉及到的,需要序列化任意 JS 变量用于展示。

下面将会解决 undefined, Function, NaN, Infinity, Symbol, BigInt 的序列化,以及对于循环引用的对象的处理。一步一步将 JSON.stringify 改造成 JS.stringify推荐直接拉到底部看完整代码,看不懂再回头看思路、说明。

阅读更多

使用 JavaScript 实现抽象相等比较(==)

抽象相等比较Abstract Equality Comparison)即 == 操作符,又被称作宽松相等非严格相等

而在抽象相等比较的过程中,为了使 == 两侧的数据可以进行比较,会尽可能将它们转换成相同类型,这就是的隐式类型转换

阅读更多