@likcheung/shared
v0.0.16
Published
licheung shared
Readme
Lik Shared
module plz
import {
poll,
Mitter,
transOptionsFromMap,
transClassifyFromList,
once,
deviceDetect,
u_setStyle,
u_stopPropagation,
} from '@likcheung/shared'Array
splitArray
split array by arguments
ex:
splitArray([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3, 3, 4)
/*
[
[1, 2, 3],
[4, 5, 6],
[7, 8, 9, 10],
]
*/splitArrayAuto
split array by arguments, if total of arguments equal or greater than array length, result same as splitArray, else will split by the last arguments value.
ex:
splitArrayAuto([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3, 3)
/*
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
*/Trans
transOptionsFromMap
transform a map or enum to a universal opition list
ex:
transOptionsFromMap({ value: 'label' })
/*
{ label: 'label', value: 'value' }
*/transClassifyFromList
transfrom a list to a classify map
params:
- list --- a list
- key --- the classify dependent key
ex:
const params: [Record<string, any>[], string] = [
[
{ id: 1, value: 'one', label: '一' },
{ id: 2, value: 'two', label: '二' },
{ id: 11, value: 'one', label: '一/一' },
],
'value',
]
transClassifyFromList(...params)
/*
{
one: [
{ id: 1, value: 'one', label: '一' },
{ id: 11, value: 'one', label: '一/一' },
],
two: [{ id: 2, value: 'two', label: '二' }],
}
*/transOptionsFromList
transform a basic map list to a universal option list
params:
- map list ---
BasicMap[] - label key and value key ---
[string | symbol | number, string | symbol | number]
ex:
transOptionsFromList([{ v: 'value', l: 'label' }], 'l', 'v')
/*
[{ label: 'label', value: 'value' }]
*/transMapFromList
transform a basic map list to a map by specify key and value
parmas:
- map list ---
BasicMap[] - key of key and key of value
ex:
transMapFromList(
[
{
type: 0,
desc: '待生效',
},
],
['type', 'desc'],
)
/*
{ [0]: '待生效' }
*/Utils
Poll
for polling
args
PollFunction
function, U can use the options.successCondition or options.failureCondition check the return value
PollOptions
polling configure, object
property
- interval the interval of polling
- timeout the time limit of polling
- maxAttempts maximum of attempts times
- successCondition check the pollFun return
- failureCondition check the pollFun return
- onInterval callback of every polling
example
...wait
once
input a function, return a object, excute return.run to run this function.
params
function target function
return run exec funciton reset reset once
Web
some utils only runs in the browser environment
deviceDetect
isisInWechatMPisWeixinisMobileisIosisAndroidisIphoneisIpad
Utils
u_setStyle
set style to Element
params
- el the target element
- key the style key
- value the style value
u_stopPropagation
set a event stop propagation
params
- Event Event
Type Utils
Reducer
ActionMapFromActionCreator ActionTypeFromActionMap ActionTypeFromActionCreator
Mitter
...wait