Skip to content

Commit 090c4ed

Browse files
author
Simon he
committed
chore: update README
1 parent 2ff6b78 commit 090c4ed

File tree

4 files changed

+33
-47
lines changed

4 files changed

+33
-47
lines changed

README.md

Lines changed: 30 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,15 @@
11
## [docs](https://www.hejian.club/posts/toolsfunction)
22

33
## 此文是介绍封装的工具函数的文档[simon-js-tool](https://www.npmjs.com/package/simon-js-tool)
4-
还在持续更新中,尽情期待...
4+
目前整理了<strong>60+</strong>的常用函数,还在持续更新中...
55

66
## 使用说明
77
```bash
88
npm i simon-js-tool # 安装
99

1010
import {
11-
asyncPool,
12-
curry,
13-
debounce,
14-
deepClone,
15-
deepCompare,
16-
deepMerge,
17-
memorizeFn,
18-
quickFilter,
19-
quickFind,
20-
throttle,
21-
transformKey,
22-
traverse,
23-
isFn,
24-
isStr,
25-
isNum,
26-
isPlainObject,
27-
isUndef,
28-
isArray,
29-
isPromise,
30-
isNaN.
31-
isSymbol,
32-
isNull,
33-
isReg,
34-
VFetch,
35-
interceptError } from 'simon-js-tool' # 按需引入
11+
deepCompare
12+
} from 'simon-js-tool' # 按需引入
3613

3714
```
3815

@@ -65,6 +42,7 @@ console.log(result) // { a: 1, b: 4, c: { d: 5, e: 6 } }
6542
- 控制异步并发执行的数量
6643
- 参数: limit-控制异步并发执行的数量,tasks-异步任务数组
6744
```js
45+
// limit 并发数量 , tasks httpRequest[]
6846
asyncPool(limit, tasks).then((results) => {
6947
// results is an array of results
7048
})
@@ -150,6 +128,7 @@ const f = debounce(() => {
150128
- 函数接收target-当前遍历的值,index-当前遍历的索引, item-当前遍历的那一项
151129
- 可以指定多个属性
152130
- 使用类似与babel的traverse方法
131+
- 使用场景:快速提取数据中的某些属性,转换为新的数据结构
153132
```javascript
154133
// traverse(arr, { 'family.name'(target: any, index: number, item: any) { console.log(target, index) } })
155134
const obj = {
@@ -170,6 +149,7 @@ traverse(obj, {
170149
## transformKey
171150
- 支持多层级的key
172151
- 将对象的key转换成需要的key
152+
- 使用场景: 前端定义字段有后端不一样的key,比如后端的key是id,前端的key是_id
173153
```javascript
174154
// transformKey(obj, { 'family.name': 'familyName', 'family.age': 'familyAge' })
175155
const obj = {
@@ -295,6 +275,7 @@ getDevice() => { os: 'android', dev: 'chrome' }
295275
preload('https://img.yzcdn.cn/vant/cat.jpeg')
296276
preload(['https://img.yzcdn.cn/vant/cat.jpeg', 'https://img.yzcdn.cn/vant/dog.jpeg'])
297277
```
278+
298279
## lazyLoad
299280
- 图片懒加载
300281
- params-1: 图片的集合 Element | Element[] | NodeList[] | class | id | tagName
@@ -309,13 +290,14 @@ preload(['https://img.yzcdn.cn/vant/cat.jpeg', 'https://img.yzcdn.cn/vant/dog.jp
309290
// template
310291
<img src="temp" data-src="../public/favicon.svg" alt="" h-10 bg-red />
311292
```
293+
312294
## addScript
313-
- 动态添加script标签
295+
- 动态添加script标签放 => ead
314296
```javascript
315297
addScript('https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js')
316298
```
317299
## addStyle
318-
- 动态添加style标签
300+
- 动态添加style标签 => head
319301
```javascript
320302
addStyle(`
321303
.test {
@@ -334,6 +316,10 @@ download('https://www.baidu.com/img/bd_logo1.png', 'baidu.png')
334316
- type: '前空格' | '后空格' | '前后空格' | '所有空格'
335317
```javascript
336318
trim(str: string,type: 'pre' | 'post' | 'around' | 'all' = 'around')
319+
trim(' h e l l o ') => 'h e l l o'
320+
trim(' h e l l o ', 'pre') => 'h e l l o '
321+
trim(' h e l l o ', 'post') => ' h e l l o'
322+
trim(' h e l l o ', 'all') => 'hello'
337323
```
338324
339325
## compressCss
@@ -456,7 +442,6 @@ formateNum(number: number | string, decimals = 2, integer: 'floor' | 'ceil' = 'c
456442
// interceptError(() => { throw new Error('error') }).catch(err=>{ console.log(err) })
457443
interceptError(fn: Function) => Promise<any>
458444
```
459-
460445
## isBottom
461446
- 判断滚动是否触底
462447
- distance: 距离底部的距离作为触底的判断标准 默认0
@@ -475,21 +460,22 @@ console.log(calNum.mul(0.1, 0.2, 0.2)) => 0.004
475460
```
476461
477462
## 类型判断
478-
- isArray(o) - 判断是否是数组
479-
- isPlainObject(o) - 判断是否是纯对象
480-
- isFn(o) - 判断是否是函数
481-
- isStr(o) - 判断是否是字符串
482-
- isNum(o) - 判断是否是数字
483-
- isBool(o) - 判断是否是布尔值
484-
- isUndef(o) - 判断是否是undefined
485-
- isNull(o) - 判断是否是null
486-
- isNaN(o) - 判断是否是NaN
487-
- isReg(o) - 判断是否是正则
488-
- isSymbol(o) - 判断是否是Symbol
489-
- isPromise(o) - 判断是否是Promise
490-
- isDate(o) - 判断是否是日期
491-
- isMobile(o) - 判断是否是手机号
492-
- isEmail(o) - 判断是否是邮箱
463+
- isArray(obj) - 判断是否是数组
464+
- isPlainObject(obj) - 判断是否是纯对象
465+
- isFn(obj) - 判断是否是函数
466+
- isStr(obj) - 判断是否是字符串
467+
- isNum(obj) - 判断是否是数字
468+
- isBool(obj) - 判断是否是布尔值
469+
- isUndef(obj) - 判断是否是undefined
470+
- isNull(obj) - 判断是否是null
471+
- isNaN(obj) - 判断是否是NaN
472+
- isReg(obj) - 判断是否是正则
473+
- isSymbol(obj) - 判断是否是Symbol
474+
- isPromise(obj) - 判断是否是Promise
475+
- isDate(obj) - 判断是否是日期
476+
- isMobile - 判断是否是手机号
477+
- isEmail - 判断是否是邮箱
478+
- isIdCard - 判断是否是身份证
493479
- isSet(o) - 判断是否是Set
494480
- isMap(o) - 判断是否是Map
495481

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
"esno": "^0.16.3",
6060
"express": "^4.18.1",
6161
"pkgroll": "^1.3.1",
62-
"simon-js-tool": "workspace:^1.0.8",
62+
"simon-js-tool": "workspace:^1.0.22",
6363
"typescript": "^4.7.2",
6464
"vitest": "^0.14.2"
6565
},

playground/src/main.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { createApp } from 'vue'
22
import { createRouter, createWebHistory } from 'vue-router'
33
import routes from 'virtual:generated-pages'
4-
import { monitorPef, vFetch } from '../../src'
4+
import { monitorPef, vFetch } from 'simon-js-tool'
55
import App from './App.vue'
66

77
import '@unocss/reset/tailwind.css'

pnpm-lock.yaml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)