llm-web-tool v2.1.3
李立民的前端工具库
注意
2.x 版本移除了qrcode、data两个模块
使用方法
Web引入
直接引入 根目录/dist/web-tool.js
<script src="/dist/web-tool.js"></script>
在页面中访问 WT 即可
例如:获取URL中的参数
var token = WT.Url.getUrlVar('token');
npm安装
npm install web-tool --save
使用时:
import * as WT from 'web-tool';
var token = WT.url.getVar('token');
主要模块
- url url相关
- storage 本地储存管理
- browser 浏览器信息
url
本模块依赖window.location,不支持小程序等无BOM环境
方法:
getVar(key = undefined)
说明:获取url中的参数,若key不传入,则获取所有参数,返回对象。若key传入字符串,则返回该参数,若无该参数则返回null
接收:string key 参数名,默认undefined
返回:object | string | null 参数的值,若不存在返回null
getHashVar()
说明:获取url中的参数(兼容hash模式),传统方法对参数在哈希前的url不兼容,例如
www.baidu.com?token=abc#/pages/index
这样的路径使用getUrlVar方法会获取到{token:'abc#/pages/index'}
但使用本方法会正确获取到{token:'abc'},并且对于 www.baidu.com?token=abc#/pages/index&name=abc 这样的url,也能正确获取到{token:'abc', name:'abc}
接收:string key 参数名,默认undefined
返回:object | string | null 参数的值,若不存在返回null
getHashPath()
说明:获取当前Url的完整路径,包含哈希路径,不包含任何参数。如:http://www.baidu.com/#/pages/name?key=123 ,调用本方法将返回http://www.baidu.com/#/pages/name
返回:string 路径
stroage
本模块主要使用json对storage进行统一封装,由于原生storage管理方法只支持字符串,如果使用本模块,必须在存取都使用,否则会出现类型异常。
本模块包含两个对象:local、session。其中包含的方法相同。
调用方法:WT.storage.local.get('token');
local和session的方法
config(options = {})
说明:全局配置storage
options参数:
prefix: '', //全局前缀
default_expire_time: 0, //默认有效时间,0永久有效,>0是秒数
auto_clear_expired: true, //是否自动清除过期的
get(key = null, force_prefix = null)
- 设置一个值
- @param {string|null} key 键名,若传入null则获取所有的,等效于all()方法
- @param {string|null} force_prefix 强制获取某个前缀的
- @return any 获取的值
set(key, val, expire_time = 0, force_prefix = null)
- 获取一个值
- @param {string} key 键名
- @param {any} val 键值
- @param {number} expire_time 过期时间(>=0),0表示无限,单位秒
- @param {string} force_prefix 强制设置前缀
- @return this 返回对象本身,支持链式调用
all(force_prefix = null)
- 获取所有值
- @param {string} force_prefix 强制设置前缀
- @return {object} 返回包含所有键值对的对象,若空则返回空对象
remove(key = null, force_prefix = null)
- 移除一个/所有值
- 不传参则移除全局前缀下的所有键值,如果全局前缀是'',则移除所有
- @param {string} key 要移除的键名,传入null则移除全部
- @param {string} force_prefix 强制设置前缀,传入null则使用全局前缀
- @return this 返回对象本身,支持链式调用
browser
本模块依赖window.navigator,不支持小程序等无BOM环境
方法:
info()
说明:获取浏览器全部信息
返回:object 返回浏览器各种信息,结构如下:
{ isPC: isPC(), isMobile: isMobile(), isPad: isPad(), isSafari: isSafari(), isWechat: isWechat(), isIE: isIE(), isOpera: isOpera(), isWebkit: isWebkit(), }
isPC()
说明:是否是PC环境
返回:bool
isMobile()
说明:是否是手机环境(不包含平板)
返回:bool
isPad()
说明:是否是平板环境
返回:bool
isSafari()
说明:是否是Safari浏览器,包含iphone、ipad、mac
返回:bool
isWechat()
说明:是否是微信浏览器
返回:bool
isIE()
说明:是否是IE浏览器(本类库在IE中可能不兼容)
返回:bool
isOpera()
说明:是否是欧朋浏览器
返回:bool
isWebkit()
说明:是否是Webkit内核浏览器,注意,Safari浏览器也是Webkit内核
返回:bool