@kyol/usejs
TypeScript icon, indicating that this package has built-in type declarations

0.1.10 • Public • Published

@kyol/usejs<常用函数库>

  • description

    主要解决常用函数和性能函数的使用

    文档持续更新中

函数描述

函数名 参数 返回 description
compose compose(func1,func2) : Array[functionList] 函数列队 Function 组合函数
composeSync compose(asyncFunc1,asyncFunc2) : Array[functionList] 异步函数列队函数列队 Function 组合函数
currayFactory currayFactory(a,b,c) Array 属性列队 c 可以是对象 Function 返回一个函数,函数入参为映射索引的值,超出索引外的第一个如果是对象,则为扩展对象 抽象工厂
usePipe usePipe(a:function,isPromiseReturn :boolean) b 为真则是然会 promise 返回一个函数 Function:() => {} 复用代码片段
useRef useRef('keyName',any, reset?) reset 作为强制重置变量值 返回一个 ObserveData 对象 里面有一个属性为 value 唯一 key,所有相同 key 的值变化的时候自动,自动更新,并且 const test = useRef('a', 80);在模板语法中可以直接使用 test 代替 test.value(如 vue2,vue3); const test2 = useRef('a', 100) 这个时候因为是存在 a 这个变量的所以 test2,value 为 80 而不是 100,
useLocal useLoacl('key',any) 返回一个 ObserverData 对象,并绑定原始值在 localStorage 对象上 const test = useLoacl('test-1',() => 100) 那么 window.localStorage['test-1'] = 100 , 在 JS 中使用 test.value = 200 则 window.localStorage['test-1'] 也变成 200
useSession useSession(('key',any)) 返回一个 ObserverData 并绑定原始值在 sessionStorage 对象上 const test = useSession('keyName', 100 or () => ({测试})) 他存储的不是 ObserveData 对象,而是简单的 数据值
isRef isRef(ObserverData) 返回 boolean 是不是 ObserberData 类型

| dele

test 常用函数演示

useRef: 的映射使用,可以实现跨组件 跨路由。不支持刷新

uselocal 的映射使用,可以实现跨组件 跨路由。支持刷新, 不支持浏览器 同 sessionStorage

useSession 的映射使用,可以实现跨组件 跨路由。支持刷新,支持关闭浏览器同 localStorage

以上三个函数的用法一致

const myOne = useRef('key-one', () => '我是第一个值');

const myTwo = useRef('key-one', () => '我是第二个值');

console.log(myOne); // 返回 {value:我是第一个值}
console.log(myTwo); // 返回 {value:我是第一个值}

// 一改则改
myTwo.value = '改变一次值';

console.log(myOne); // 返回 {value:改变一次值}
console.log(myTwo); // 返回 {value:改变一次值}

// 强制覆盖
const mywtree = useRef('key-one', () => '我是第三个值', true);
console.log(myOne); // 返回 {value:我是第三个值}
console.log(myTwo); // 返回 {value:我是第三个值}
console.log(mywtree); // 返回 {value:改变一次值}

const myOne = uselocal('key-one', () => '我是第一个值');

Object 的函数扩展

useObject 对象上扩展一下方式,也可以使用 useFastExtend() 函数调用,直接扩展到 Object 原型上

  • forEach
  • map
  • filter
  • some
  • every
import { useFastExtend } from '@kyol/usejs';
// 快速绑定 Object 与 Function 的静态方法
useFastExtend();
const myObj = { a: 1, b: 20 };

Object.forEach(myObj, (value, key, origin) => {
    console.log('value:', value, 'key:', key, origin); // 打印出 value: 1, key: a
});

const myArray = Object.map(myObj, (value, key, origin) => {
    return { key: value, name: key };
});
// myArray  = [{a:1,name:'a'},{b:20,name:'b'}]

const findObject = Object.find(myObj, (value, key) => key === 'a');
// findObject = {key:a,value:1} || undefined

const filterObject = Object.find(myObj, (value, key) => key === 'a');
// filterObject = {a:1}
filterObject.keys(); // ['a']
filterObject.values(); // [1]
filterObject.size; //  1  返回查找的个数

Package Sidebar

Install

npm i @kyol/usejs

Weekly Downloads

1

Version

0.1.10

License

none

Unpacked Size

19.5 kB

Total Files

4

Last publish

Collaborators

  • kyol