1.0.10 • Published 11 months ago

ilibs v1.0.10

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

ilibs

前端基础工具方法

Install

$ npm install ilibs
// or
$ npm i ilibs
// or
$ pnpm install ilibs
// or
$ yarn add ilibs

验证

函数列表

函数名称描述
isArray(data)验证是否为数组
isObject(data)验证数据是否为对象
isFunction(data)验证数据是否为函数
isString(data)验证数据是否为字符串
isNumber(data)验证数据是否为数字类型
isBoolean(data)验证数据是否为布尔值
isSymbol(data)验证数据是否为 symbol
isBasicData(data)验证数据是否为基础数据类型
isJSONStr(str)检查字符串是否为 json 字符串
isType(data,type)验证数据是否为指定数据类型
getType(data)获取数据类型
isEqual(v1,v2)验证两条数据是否相等
isOdd(num)检查是否为奇数
isPicture(picture)检查字符串是否为图片 url
isURL(url)检查 URL 是否有效
isDevice()检查当前是 android 还是 ios 还是 web 还是 WeChat
isHex(color)检验证是否为 hex 颜色有效值
isRgb(color)验证是否为 rgb 颜色有效值
isColor(color)验证是否为颜色有效值
isExistChild(data)验证对象/数组是否为空数据

API

isArray

验证数据是否为数组

import { isArray } from 'ilibs';
console.log(isArray([1, 2, 3, 4])); // true
console.log(isArray(1)); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isObject

验证数据是否为对象

import { isObject } from 'ilibs';
console.log(isObject({ a: 1 })); // true
console.log(isObject([1, 2, 3, 4])); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isFunction

验证数据是否为函数

import { isFunction } from 'ilibs';
console.log(isFunction(isFunction)); // true
console.log(isFunction({ a: 1 })); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isString

验证数据是否为字符串

import { isString } from 'ilibs';
console.log(isString('isString')); // true
console.log(isString({ a: 1 })); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isNumber

验证数据是否为数字类型

import { isNumber } from 'ilibs';
console.log(isNumber(1)); // true
console.log(isNumber('1.2')); // true
console.log(isNumber('1a')); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isBoolean

验证数据是否为布尔值

import { isBoolean } from 'ilibs';
console.log(isBoolean(true)); // true
console.log(isBoolean('1a')); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isSymbol

验证数据是否为 symbol

import { isSymbol } from 'ilibs';
console.log(isSymbol(new Symbol('1'))); // true
console.log(isSymbol('1a')); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isBasicData

验证数据是否为基础数据类型

import { isBasicData } from 'ilibs';
console.log(isBasicData(1)); // true
console.log(isBasicData(new Symbol('1'))); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-

isJSONStr

检查字符串是否为 json 字符串

import { isJSONStr } from 'ilibs';
console.log(isJSONStr('{"a":1}')); // true
console.log(isJSONStr('12345678')); // false
API
参数描述类型必填可选项
str需要验证的数据stringyes-

isType

验证数据是否为指定数据类型

import { isType } from 'ilibs';
console.log(isType('{"a":1}', 'string')); // true
console.log(isType('12345678', 'number')); // false
API
参数描述类型必填可选项
data需要验证的数据anyyes-
type验证的数据类型stringyesstring/number/object/symbol/array/function/boolean

getType

获取数据类型

import { getType } from 'ilibs';
console.log(getType({ a: 1 })); // object
console.log(getType('12345678')); // string
API
参数描述类型必填可选项
data需要验证的数据anyyes-
Return

'string' | 'number' | 'object' | 'symbol' | 'array' | 'function' | 'boolean'

isEqual

验证两条数据是否相等

import { isEqual } from 'ilibs';
console.log(isEqual({ a: 1 }, { a: 1 })); // true
console.log(isEqual('12345678', 'number')); // false
API
参数描述类型必填可选项
v1需要验证的数据 1anyyes-
v2需要验证的数据 2anyyes-

isOdd

检查是否为奇数

import { isOdd } from 'ilibs';
console.log(isOdd(1)); // true
console.log(isOdd(2)); // false
API
参数描述类型必填可选项
num需要验证的数字numberyes-

isPicture

检查字符串是否为图片 url

import { isPicture } from 'ilibs';
console.log(isPicture('./image.png')); // true
console.log(isPicture('./video.mp4')); // false
API
参数描述类型必填可选项
picture需要验证的链接stringyes-

isURL

检查字符串是否为图片 url

import { isURL } from 'ilibs';
console.log(isURL('https://baidu.com')); // true
console.log(isURL('./video.mp4')); // false
API
参数描述类型必填可选项
url需要验证的链接stringyes-

isDevice

检查当前是 android 还是 ios 还是 web 还是 WeChat

import { isURL } from 'ilibs';
console.log(isDevice()); // Web
return

'iOS' | 'Android' | 'WeChat' | 'Web'

isHex

验证是否为 hex 颜色有效值

import { isHex } from 'ilibs';
console.log(isHex('#fff')); // true
console.log(isHex('rgba(255,255,255,1)')); // false
API
参数描述类型必填可选项
color需要验证的 hexstringyes-

isRgb

验证是否为 rgb 颜色有效值

import { isRgb } from 'ilibs';
console.log(isRgb('#fff')); // false
console.log(isRgb('rgba(255,255,255,1)')); // true
API
参数描述类型必填可选项
color需要验证的 hexstringyes-

isColor

验证是否为颜色有效值

import { isColor } from 'ilibs';
console.log(isColor('#fff')); // true
console.log(isColor('(255,255,255,1)')); // false
API
参数描述类型必填可选项
color需要验证的 hexstringyes-

isExistChild

验证对象/数组是否为空数据

import { isExistChild } from 'ilibs';
console.log(isExistChild({})); // true
console.log(isExistChild({ a: 1 })); // false
console.log(isExistChild({})); // true
console.log(isExistChild({ a: 1 })); // false
API
参数描述类型必填可选项
data需要验证的数据any[]/obejctyes-

转换

函数列表

函数名称描述
toLowerCase(str)字符串全部转小写
toUpperCase(str)字符串全部转大写
capitalUpperCase(str)设置首字母大写不改变之后的字符串
capitalLowerCase(str)设置首字母小写不改变之后的字符串
capitalUpperCaseAllLowerCase(str)设置首字母大写其他全部转为小写
toLowerCamelCase(str)将"xx_xx"字符串转为小驼峰
toCamelCase(str)将"xx_xx"字符串转为大驼峰
filterTag(str)过滤 html 代码(把<>转换为字符串)
convertNumberToUppercase(num)将阿拉伯数字翻译成中文的大写数字
dateFmt(date,fmt)时间格式化
getPinyin(l1,firstBoolen)汉字转拼音
hexToRgb(color,a)将 hex 表示方式转换为 rgba 表示方式
rgbToHex(rgb)将 rgb 表示方式转换为 hex 表示方式

API

toLowerCase

字符串全部转小写

import { toLowerCase } from 'ilibs';
console.log(toLowerCase('HTTPs')); // https
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

toUpperCase

字符串全部大写

import { toUpperCase } from 'ilibs';
console.log(toUpperCase('HTTPs')); // HTTPS
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

capitalUpperCase

设置首字母大写不改变之后的字符串

import { capitalUpperCase } from 'ilibs';
console.log(capitalUpperCase('https')); // Https
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

capitalLowerCase

设置首字母小写不改变之后的字符串

import { capitalLowerCase } from 'ilibs';
console.log(capitalLowerCase('Https')); // https
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

capitalUpperCaseAllLowerCase

设置首字母大写其他全部转为小写

import { capitalUpperCaseAllLowerCase } from 'ilibs';
console.log(capitalUpperCaseAllLowerCase('HTTPS')); //Https
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

toLowerCamelCase

将"xx_xx"字符串转为小驼峰

import { toLowerCamelCase } from 'ilibs';
console.log(toLowerCamelCase('HTTPS_baidu')); //httpsBaidu
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

toCamelCase

将"xx_xx"字符串转为大驼峰

import { toCamelCase } from 'ilibs';
console.log(toCamelCase('HTTPS_baidu')); //HttpsBaidu
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

filterTag

过滤 html 代码(把<>转换为字符串)

import { filterTag } from 'ilibs';
console.log(filterTag('<div>HTTPS_baidu</div>')); //<div>HTTPS_baidu</div>
API
参数描述类型必填可选项
str需要转换的字符串stringyes-

convertNumberToUppercase

将阿拉伯数字翻译成中文的大写数字

import { convertNumberToUppercase } from 'ilibs';
console.log(convertNumberToUppercase(12312312)); //一仟二百三十一萬二仟三百一十二
API
参数描述类型必填可选项
num需要转换的数字numberyes-

dateFmt

时间格式化

import { dateFmt } from 'ilibs';
console.log(dateFmt()); // 2022/10/09 15:12:34
API
参数描述类型必填可选项默认值
date需要转换的时间DateTime---
fmt转换的时间格式string--YYYY/mm/dd HH:MM:SS

getPinyin

汉字转拼音

import { getPinyin } from 'ilibs';
console.log(getPinyin('汉字转拼音')); // HanZiZhuanPinYin
API
参数描述类型必填可选项默认值
l1指定中文字符串string---
firstBoolen每个单词首字母是否大写boolen-true/falsetrue

hexToRgb

将 hex 表示方式转换为 rgba 表示方式

import { hexToRgb } from 'ilibs';
console.log(hexToRgb('#ffffff')); // rgba(255,255,255,1)
API
参数描述类型必填可选项默认值
colorhex 色值string---
a转换结束的透明度,默认 1boolen-0-11

rgbToHex

将 rgb 表示方式转换为 hex 表示方式

import { rgbToHex } from 'ilibs';
console.log(rgbToHex('rgba(255,255,255,1)')); // #FFFFFFFF
API
参数描述类型必填可选项默认值
rgbrgb 色值string---

工具

函数列表

函数名称描述
fontSize(def,maxWidth)根据分辨率不同显示不同字体大小
getUrlQuery(url)从查询字符串中获取参数
generatePathQuery(path,obj)使用查询字符串生成路径
getPathParams(path,pathMap,serializer)从路径中获取参数
generatePath(path,obj)使用查询字符串生成路径
howLongAgo(date,type)距现在多少时间前
useThrottl(fn,time)程序节流
useDebounce(fn,time)程序防抖
useLazyLoad(tags,node)图片懒加载
randomNum(min,max)生成区间随机数
cloneDeep(data,)数据深拷贝
unwarp(obj)针对于 Proxy 对象结构
merge(...args)数据合并
each(data,iteratee)遍历数据
filter(array,predicate)数组筛选
push(data,key,value)对象/数组添加数据
flatter(arr)数组扁平化处理(多维数组变成一维数组)
setValue(data,path,value)设置数组/对象中对应 path 属性路径上的值,如果 path 不存在,则创建
getValue(data,key,alt)根据字符串输出对象参数,避免程序阻滞
currying(fn,...args)柯里化处理
templateParser(template,data)template 解析器
listToTree(data)列表转成树形结构
treeToList(data)树形结构转成列表
setInterval(fn,t)setInterval 重置优化
copyjs(dom)复制当前节点内容
generateRandomHexColor()生成随机颜色
scrollTo(element,type)滚动到顶部/底部 ('top'/'bottom',默认 top)

API

fontSize

字符串全部转小写

import { fontSize } from 'ilibs';
console.log(fontSize(14, 1920)); // 14
API
参数描述类型必填默认值
def基数值numberyes-
maxWidth最大分辨率宽number-1920
Return

number

getUrlQuery

从查询字符串中获取参数

import { getUrlQuery } from 'ilibs';
console.log(getUrlQuery('/user?name=Orkhan&age=30')); // {name: 'Orkhan', age: '30'}
API
参数描述类型必填默认值
urlurl 地址stringyes-
Return

object

generatePathQuery

使用查询字符串生成路径

import { generatePathQuery } from 'ilibs';
console.log(generatePathQuery('/user', { name: 'Orkhan', age: 30 })); // /user?name=Orkhan&age=30
API
参数描述类型必填默认值
path路径符串stringyes-
obj条件对象object--
Return

string

getPathParams

从查询字符串中获取参数

import { getPathParams } from 'ilibs';
console.log(getPathParams('/app/products/123', '/app/:page/:id')); // {page: 'products', id: '123'}
console.log(
	getPathParams('/items/2/id/8583212', '/items/:category/id/:id', {
		category: (v) => ['Car', 'Mobile', 'Home'][v],
		id: (v) => +v,
	}),
); // {category: 'Home', id: 8583212}
API
参数描述类型必填默认值
pathurl 地址stringyes-
pathMap需要获取参数字符串stringyes-
serializer自由组合返回的对象object--
Return

object

generatePath

使用查询字符串生成路径

import { generatePath } from 'ilibs';
console.log(generatePath('/user/:name/:age', { name: 'Orkhan', age: 30 })); // /user/Orkhan/30
API
参数描述类型必填默认值
path路径符串stringyes-
obj条件对象object--
Return

string

howLongAgo

使用查询字符串生成路径

import { howLongAgo } from 'ilibs';
console.log(howLongAgo('2022-10-09 15:30:23')); // 1 小时前
console.log(howLongAgo('2022-10-09 15:30:23')); // 1 hours ago
API
参数描述类型必填可选值默认值
date时间Date/number/stringyes--
type显示名称类型string-cn/encn
Return

string

useThrottl

程序节流

import { useThrottl } from 'ilibs';
const conso = (n: number) => console.log(n);
window.onload = () => {
	const button = document.createElement('button');
	button.style.lineHeight = '35px';
	button.innerHTML = 'submit';
	document.getElementById('app')?.appendChild(button);
	button.addEventListener('click', useThrottl(conso, 1000));
};
API
参数描述类型必填可选值默认值
fn执行函数Function---
time时间number---

useDebounce

程序节流

import { useDebounce } from 'ilibs';
const conso = (n: number) => console.log(n);
window.onload = () => {
	const input = document.createElement('input');
	input.style.lineHeight = '35px';
	document.getElementById('app')?.appendChild(input);
	input.addEventListener('keyup', useDebounce(conso, 1000));
};
API
参数描述类型必填可选值默认值
fn执行函数Function---
time时间number---

useLazyLoad

图片懒加载

import { useLazyLoad } from 'ilibs';
window.onload = () => {
	useLazyLoad(['/a.png', '/b.png', '/c.png', '/d.png']);
};
API
参数描述类型必填可选值默认值
tags图片链接集合string[]yes--
node图片容器 dom 节点Element--document.documentElement

randomNum

生成区间随机数

import { randomNum } from 'ilibs';
console.log(randomNum(100, 10000)); // 2208.79223401305
API
参数描述类型必填可选值默认值
min最小值numberyes--
max最大值numberyes--

cloneDeep

数据深拷贝

import { cloneDeep } from 'ilibs';
const a = { a: 1 };
const b = cloneDeep(a);
b.a = 2;
console.log(a, b); //  {a: 1} {a: 2}
API
参数描述类型必填可选值默认值
data数据anyyes--
Return

any

unwarp

针对于 Proxy 对象结构

import { unwarp } from 'ilibs';
let obj = {
	a: 1,
};
let proxyObj = new Proxy(obj, {
	get: function (target, attr) {
		return target[attr]; // obj["a"]
	},
});
console.log(proxyObj); // Proxy {a: 1}
console.log(unwarp(proxyObj)); // {a: 1}
API
参数描述类型必填可选值默认值
obj数据objectyes--
Return

object

merge

针对于 Proxy 对象结构

import { merge } from 'ilibs';
let obj = {
	a: 1,
};
console.log(merge(obj, { b: 2 })); // {a: 1, b: 2}
Return

any[] | AnyObject

each

设置页面标题

import { each } from 'ilibs';
each(
	{
		a: 1,
		b: 2,
	},
	(key, index, data) => {
		console.log(key, index, data);
	},
);
// 1 'a' {a: 1, b: 2}
// 2 'b' {a: 1, b: 2}
API
参数描述类型必填可选值默认值
data数据anyyes--
iteratee回调函数Functionyes--

filter

数组筛选

import { filter } from 'ilibs';
console.log(filter([1, 2, 3, 4, 5, 6], (a) => a > 2));
// [3, 4, 5, 6]
API
参数描述类型必填可选值默认值
data数据any[]yes--
predicate回调函数Functionyes--

push

数组筛选

import { push } from 'ilibs';
console.log(push([1, 2, 3, 4, 5, 6], 2)); // [1, 2, 3, 4, 5, 6, 2]
console.log(push([1, 2, 3, 4, 5, 6], 2, 9)); // [1, 2, 9, 4, 5, 6]
console.log(push({ a: 1, b: 2 }, 'a', 9)); // {a: 9, b: 2}
console.log(push({ a: 1, b: 2 }, 'c', 9)); // {a: 1, b: 2,c:9}
console.log(push({ a: 1, b: 2 }, { c: 1, d: 2 })); // {a: 1, b: 2, c: 1, d: 2}
console.log(
	push({ a: 1, b: 2 }, [
		{ c: 3, d: 4 },
		{ a: 11, b: 12 },
	]),
); // {a: 11, b: 12, c: 3, d: 4}
API
参数描述类型必填可选值默认值
data数据any[]/objectyes--
key数组改变时数组的下标,添加时数组添加的数据.对象的 keyanyyes--
value某条数据的值any---

flatter

数组扁平化处理(多维数组变成一维数组)

import { flatter } from 'ilibs';
console.log(flatter([[1, 2, 3], 4, 5, 6, [[[[7, 8], 9]]]])); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
API
参数描述类型必填可选值默认值
data数据any[]yes--

setValue

设置数组/对象中对应 path 属性路径上的值,如果 path 不存在,则创建

import { setValue } from 'ilibs';
const object = {
	a: [{ b: { c: 1 } }, { b2: { c: 2 } }],
	b: 1,
	c: { c: 3 },
	d: ['2.0', ['old d.1'], ['2.2.0', '2.2.1']],
};
const array = ['0', '1', ['2.0', ['2.1.0'], ['2.2.0', '2.2.1']]];
setValue(object, 'd.1', 'new d.1');
console.log('object:', object);
// object: {
//     a: [{ 'b': { 'c': 1 } }, { 'b2': { 'c': 2 } }],
//     b: 1,
//     c: { 'c': 3 },
//     d: [
//         '2.0',
//         'new d.1',
//         ['2.2.0', '2.2.1']
//     ]
// };
setValue(array, '2.2', 4);
console.log('array:', array);
// array: [
//     '0',
//     '1',
//     [
//         '2.0',
//         4,
//         ['2.2.0', '2.2.1']
//     ]
// ]
API
参数描述类型必填可选值默认值
data数据object/arrayyes--
path设置值的路径string/string[]/Numberyes--
value设置的值any---

getValue

根据字符串输出对象参数,避免程序阻滞

import { getValue } from 'ilibs';
const arr = [1, 2, 3, 4, [51, 52, 53, 54, [551, 552, 553, 554, 555]]];
console.log(getValue({ a: 1, b: 2, c: { a: 11, b: 12 } }, ['c', 'a'])); // 11
console.log(getValue({ a: 1, b: 2, c: { a: 11, b: 12 } }, 'c.a')); // 11
console.log(getValue({ a: 1, b: 2, c: { a: 11, b: 12 } }, 'c.a.d', 'test')); // test
console.log(getValue(arr, '5.5.5', 'test')); // 555
console.log(getValue(arr, '5.5', 'test')); // [551,552,553,554,555]
console.log(getValue(arr, '5.5.9', 'test')); // test
API
参数描述类型必填可选值默认值
data数据object/arrayyes--
key输出的字段路径string/string[]/Numberyes--
alt在没有获取到 value 返回的值any---

currying

柯里化处理

import { currying } from 'ilibs';
const add = (a, b, c) => a + b + c;
const a = currying(add, 5, 5);
console.log(a(2)); // 12
API
参数描述类型必填可选值默认值
fn执行函数Functionyes--
args传参anyyes--

templateParser

template 解析器

import { templateParser } from 'ilibs';
console.log(templateParser('<div>{{test}}</div>', { test: '测试' })); // <div>测试</div>
API
参数描述类型必填可选值默认值
templatehtml 片段stringyes--
data解析格式objectyes--

listToTree

列表转成树形结构

import { listToTree } from 'ilibs';
console.log(
	listToTree([
		{
			id: 1,
			text: '节点1',
			parentId: 0, //这里用0表示为顶级节点
		},
		{
			id: 2,
			text: '节点1_1',
			parentId: 1, //通过这个字段来确定子父级
		},
	]),
);
// [{"id":1,"text":"节点1","parentId":0,"children":[{"id":2,"text":"节点1_1","parentId":1}]}]
API
参数描述类型必填可选值默认值
data数据Arrayyes--

treeToList

树形结构转成列表

import { treeToList } from 'ilibs';
console.log(
	treeToList([
		{
			id: 1,
			text: '节点1',
			parentId: 0,
			children: [{ id: 2, text: '节点1_1', parentId: 1 }],
		},
	]),
);
// [{"id":2,"text":"节点1_1","parentId":1},{"id":1,"text":"节点1","parentId":0}]
API
参数描述类型必填可选值默认值
data数据Arrayyes--

setInterval

setInterval 重置优化

import { setInterval } from 'ilibs';
setInterval(() => {
	console.log(1);
}, 1000)();
API
参数描述类型必填可选值默认值
fn回调执行方法Functionyes--
t执行时间 (毫秒)numberyes--

copyjs

复制当前节点内容

import { copyjs } from 'ilibs';
const d = document.createElement('div');
d.innerHTML = '测试复制';
d.id = 'test';
document.body.appendChild(d);
setTimeout(() => {
	copyjs('#test');
}, 1000);
API
参数描述类型必填可选值默认值
dom需要复制的节点Element / stringyes--

generateRandomHexColor

生成随机颜色

import { generateRandomHexColor } from 'ilibs';
console.log(generateRandomHexColor()); // #ffffff
Return

string

scrollTo

滚动到顶部/底部 ('top'/'bottom',默认 top)

import { scrollTo } from 'ilibs';
setTimeout(() => {
	scrollTo(document.body);
}, 1000);
API
参数描述类型必填可选值默认值
element带有滚动条的 domElement / stringyes--
type滚动的位置string-top/bottomtop

节点操作

函数列表

函数名称描述
setIcon(url)设置页面 ICON
setTitle(title)设置页面标题
loadRes(url,t,fn)设置页面外部引入资源
selectDom(tag)节点选择器
createTextNode(text)创建文本节点
htmlStringToVNode(html)html 字符串转 node 对象
createDom(vnode,container)node 对象转 dom 节点
setStyle(tag,style)设置 dom style 样式
setClass(tag,clas)设置 dom class 样式
removeClass(tag,clas)删除 dom class 样式
append(tag,child)向 dom 节点添加子节点
getChildNode(tag)获取 dom 节点的子节点
setTransform(tag)设置 dom 节点过滤
addListener(target,type,callback)设置 dom 节点事件监听
removeListener(target,type,callback)移除 dom 节点事件监听
remove(node)移除 dom 节点
setAttr(node,attrs)设置 dom 节点 attr
getAttr(node,attrName)获取 dom 节点 attr

API

setIcon

设置页面 ICON

import { setIcon } from 'ilibs';
setIcon('icon.png');
API
参数描述类型必填可选值默认值
urlicon 链接地址stringyes--

setTitle

设置页面标题

import { setTitle } from 'ilibs';
setTitle('设置页面标题');
API
参数描述类型必填可选值默认值
title页面标题stringyes--

loadRes

设置页面外部引入资源

import { loadRes } from 'ilibs';
loadRes('body{color:red}', 'style');
API
参数描述类型必填可选值默认值
url引入内容stringyes--
t引入类型stringyesscript/css/style/js/javascript-
fn添加成功回调Function---

selectDom

节点选择器

import { selectDom } from 'ilibs';
console.log(selectDom('body'));
API
参数描述类型必填可选值默认值
tag节点名称,与 document.querySelector 传参一致stringyes--
Return

Element

createTextNode

创建文本节点

import { createTextNode } from 'ilibs';
console.log(createTextNode('text'));
API
参数描述类型必填可选值默认值
text文本stringyes--
Return

Element

htmlStringToVNode

html 字符串转 node 对象

import { htmlStringToVNode } from 'ilibs';
console.log(htmlStringToVNode('<div>text</div>')); //  {"tag":"DIV","attrs":{},"children":[{"tag":"DIV","attrs":{},"children":["text"]}]}
API
参数描述类型必填可选值默认值
htmlhtml 字符串stringyes--
Return

object

createDom

node 对象转 dom 节点

import { createDom } from 'ilibs';
console.log(createDom({ tag: 'DIV', attrs: {}, children: ['text'] })); //  <div>text</div>
API
参数描述类型必填可选值默认值
vnodenode 对象objectyes--
container将 dom 节点添加到那个容器object---
Return

HTMLElement | Node | Text | null

setStyle

设置 dom style 样式

import { setStyle } from 'ilibs';
setStyle('body', {
	color: 'red',
});
setStyle('body', 'color: red');
API
参数描述类型必填可选值默认值
tagdom 节点HTMLElement /stringyes--
style样式object /stringyes--
Return

HTMLElement | Node | Text | null

setClass

设置 dom class 样式

import { setClass } from 'ilibs';
setClass('body', {
	'body-color': true,
	'body-margin': false,
});
setClass('body', 'body-color');
setClass('body', ['body-color', 'body-margin']);
API
参数描述类型必填可选值默认值
tagdom 节点HTMLElement/stringyes--
clasclass 样式object/string/string[]yes--
Return

HTMLElement | Node | Text | null

removeClass

删除 dom class 样式

import { removeClass } from 'ilibs';
removeClass('body', {
	'body-color': true,
	'body-margin': false,
});
setClass('body', 'body-color');
setClass('body', ['body-color', 'body-margin']);
API
参数描述类型必填可选值默认值
tagdom 节点HTMLElement/stringyes--
clasclass 样式object/string/string[]yes--
Return

HTMLElement | Node | Text | null

append

向 dom 节点添加子节点

import { append } from 'ilibs';
const d = document.createElement('div');
d.innerHTML = '测试复制';
d.id = 'test';
append('body', [d]);
append('body', [{ tag: 'DIV', attrs: {}, children: ['text'] }]);
API
参数描述类型必填可选值默认值
tagdom 节点HTMLElement/stringyes--
child子节点Arrayyes--
Return

HTMLElement | Node | Text | null

getChildNode

获取 dom 节点的子节点

import { getChildNode } from 'ilibs';
console.log(getChildNode('body'));
API
参数描述类型必填可选值默认值
tagdom 节点HTMLElement/stringyes--
Return

Array

setTransform

获取 dom 节点的子节点

import { setTransform } from 'ilibs';
console.log(setTransform('body'));
API
参数描述类型必填可选值默认值
tagdom 节点HTMLElement/stringyes--
Return

Array

addListener

设置 dom 节点事件监听

import { addListener } from 'ilibs';
const bodyEvent = () => {
	console.log(1);
};
addListener('body', 'click', bodyEvent);
API
参数描述类型必填可选值默认值
targetdom 节点HTMLElement/stringyes--
type事件类型stringyes--
callback回调函数Functionyes--

removeListener

移除 dom 节点事件监听

import { addListener, removeListener } from 'ilibs';
const bodyEvent = () => {
	console.log(1);
	removeListener('body', 'click', bodyEvent);
};
addListener('body', 'click', bodyEvent);
API
参数描述类型必填可选值默认值
targetdom 节点HTMLElement/stringyes--
type事件类型stringyes--
callback回调函数Functionyes--

remove

移除 dom 节点

import { remove } from 'ilibs';
remove('body');
API
参数描述类型必填可选值默认值
nodedom 节点HTMLElement/stringyes--

setAttr

设置 dom 节点 attr

import { setAttr } from 'ilibs';
setAttr('body', { style: 'color:red' });
API
参数描述类型必填可选值默认值
nodedom 节点HTMLElement/stringyes--
attrs节点 attr 对象object---

getAttr

获取 dom 节点 attr

import { getAttr } from 'ilibs';
getAttr('body');
API
参数描述类型必填可选值默认值
nodedom 节点HTMLElement/stringyes--
attrs节点 attr 对象object---
1.0.10

11 months ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.3

1 year ago

1.0.0

2 years ago