ilibs
TypeScript icon, indicating that this package has built-in type declarations

1.0.10 • Public • Published

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 需要验证的数据 any yes -

isObject

验证数据是否为对象

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

isFunction

验证数据是否为函数

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

isString

验证数据是否为字符串

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

isNumber

验证数据是否为数字类型

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

isBoolean

验证数据是否为布尔值

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

isSymbol

验证数据是否为 symbol

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

isBasicData

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

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

isJSONStr

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

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

isType

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

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

getType

获取数据类型

import { getType } from 'ilibs';
console.log(getType({ a: 1 })); // object
console.log(getType('12345678')); // string
API
参数 描述 类型 必填 可选项
data 需要验证的数据 any yes -
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 需要验证的数据 1 any yes -
v2 需要验证的数据 2 any yes -

isOdd

检查是否为奇数

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

isPicture

检查字符串是否为图片 url

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

isURL

检查字符串是否为图片 url

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

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 需要验证的 hex string yes -

isRgb

验证是否为 rgb 颜色有效值

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

isColor

验证是否为颜色有效值

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

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[]/obejct yes -

转换

函数列表

函数名称 描述
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 需要转换的字符串 string yes -

toUpperCase

字符串全部大写

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

capitalUpperCase

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

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

capitalLowerCase

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

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

capitalUpperCaseAllLowerCase

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

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

toLowerCamelCase

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

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

toCamelCase

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

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

filterTag

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

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

convertNumberToUppercase

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

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

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/false true

hexToRgb

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

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

rgbToHex

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

import { rgbToHex } from 'ilibs';
console.log(rgbToHex('rgba(255,255,255,1)')); // #FFFFFFFF
API
参数 描述 类型 必填 可选项 默认值
rgb rgb 色值 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 基数值 number yes -
maxWidth 最大分辨率宽 number - 1920
Return

number

getUrlQuery

从查询字符串中获取参数

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

object

generatePathQuery

使用查询字符串生成路径

import { generatePathQuery } from 'ilibs';
console.log(generatePathQuery('/user', { name: 'Orkhan', age: 30 })); // /user?name=Orkhan&age=30
API
参数 描述 类型 必填 默认值
path 路径符串 string yes -
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
参数 描述 类型 必填 默认值
path url 地址 string yes -
pathMap 需要获取参数字符串 string yes -
serializer 自由组合返回的对象 object - -
Return

object

generatePath

使用查询字符串生成路径

import { generatePath } from 'ilibs';
console.log(generatePath('/user/:name/:age', { name: 'Orkhan', age: 30 })); // /user/Orkhan/30
API
参数 描述 类型 必填 默认值
path 路径符串 string yes -
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/string yes - -
type 显示名称类型 string - cn/en cn
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 最小值 number yes - -
max 最大值 number yes - -

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 数据 any yes - -
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 数据 object yes - -
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 数据 any yes - -
iteratee 回调函数 Function yes - -

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 回调函数 Function yes - -

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[]/object yes - -
key 数组改变时数组的下标,添加时数组添加的数据.对象的 key any yes - -
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/array yes - -
path 设置值的路径 string/string[]/Number yes - -
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/array yes - -
key 输出的字段路径 string/string[]/Number yes - -
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 执行函数 Function yes - -
args 传参 any yes - -

templateParser

template 解析器

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

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 数据 Array yes - -

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 数据 Array yes - -

setInterval

setInterval 重置优化

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

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 / string yes - -

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 带有滚动条的 dom Element / string yes - -
type 滚动的位置 string - top/bottom top

节点操作

函数列表

函数名称 描述
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
参数 描述 类型 必填 可选值 默认值
url icon 链接地址 string yes - -

setTitle

设置页面标题

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

loadRes

设置页面外部引入资源

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

selectDom

节点选择器

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

Element

createTextNode

创建文本节点

import { createTextNode } from 'ilibs';
console.log(createTextNode('text'));
API
参数 描述 类型 必填 可选值 默认值
text 文本 string yes - -
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
参数 描述 类型 必填 可选值 默认值
html html 字符串 string yes - -
Return

object

createDom

node 对象转 dom 节点

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

HTMLElement | Node | Text | null

setStyle

设置 dom style 样式

import { setStyle } from 'ilibs';
setStyle('body', {
	color: 'red',
});
setStyle('body', 'color: red');
API
参数 描述 类型 必填 可选值 默认值
tag dom 节点 HTMLElement /string yes - -
style 样式 object /string yes - -
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
参数 描述 类型 必填 可选值 默认值
tag dom 节点 HTMLElement/string yes - -
clas class 样式 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
参数 描述 类型 必填 可选值 默认值
tag dom 节点 HTMLElement/string yes - -
clas class 样式 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
参数 描述 类型 必填 可选值 默认值
tag dom 节点 HTMLElement/string yes - -
child 子节点 Array yes - -
Return

HTMLElement | Node | Text | null

getChildNode

获取 dom 节点的子节点

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

Array

setTransform

获取 dom 节点的子节点

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

Array

addListener

设置 dom 节点事件监听

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

removeListener

移除 dom 节点事件监听

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

remove

移除 dom 节点

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

setAttr

设置 dom 节点 attr

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

getAttr

获取 dom 节点 attr

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

Dependents (0)

Package Sidebar

Install

npm i ilibs

Weekly Downloads

4

Version

1.0.10

License

ISC

Unpacked Size

398 kB

Total Files

54

Last publish

Collaborators

  • solosm