1.0.4 • Published 5 years ago

ujs_js v1.0.4

Weekly downloads
1
License
ISC
Repository
github
Last release
5 years ago

ujs - 各类方法集

  • 调用方法

// common.js方式
const ujs = require('ujs')

// 直接调用
<script src="ujs.js"></script>
  • EmitClass 事件监听

const ujs = require('ujs')
const Events = new ujs.EmitClass()

Events.on(name, fn) // 注册监听方法
Events.once(name, fn) // 注册仅一次的监听方法
Events.emit(name, argv) // 事件分发
Events.off(name, fn) // 取消当前监听事件
Events.maxListenNums = nums // 设置最大监听数
Events._currentListenEventsName // 获取当前所有监听事件名称
  • Worker 线程创建

const ujs = require('ujs')
const worker = new ujs.ExecWorker()

// 接收子线程发送的消息,并绑定到自定义方法
worker.bind('message', () => { // ...todo })

// 发送消息给子线程
worker.send(msg)

// 主线程window主动关闭子线程
worker.closeWorker()
  • insert 方法

// 向ujs对象注入自定义方法
ujs.insert(name, fn)
  • 变量类型判定

isString() // 是否为字符串
isObject() // 是否为对象
isFunction() // 是否为函数 
isArray() // 是否为数组
isNumber() // 是否为数字
isHas() // 数组或对象中是否有已知值
isMail() // 检测邮箱格式是否正确
isUndefined() // 变量是否存在
  • 解析地址栏参数

/**
* return {object} {参数名, 值}
*/
ujs.httpParams()
  • 格式化参数

ujs.formatParams(params) // 拼接成name=xxx&num=1格式 
  • 对象深度copy

ujs.copy(obj)
  • 文件下载

/**
* params url {string} 下载地址
* params method {string} 请求方式(post,get,head等)
* params header {Object} 请求头信息
* params progressCallback {Function} 下载进度callback
*/
ujs.downloadFile({url, method, headers, progressCallback})
  • ajax请求

/**
* params url {string} 请求地址
* params method {string} 请求方式(post,get,head等)
* params header {Object} 请求头信息
* params data {Object} 请求参数
* params type {string} 类型(区分上传与一般接口请求)
*/
ujs.ajax({url, method, headers, data, type})
  • uploadFile 文件上传

/**
* params url {string} 上传地址
* params file 文件
* params type {string} 文件类型
* params argv 扩展参数(需写入FormData中的)
*/
ujs.uploadFile({url, file, type, argv})
  • sort 数组排序(二分法快速排序)

ujs.sort([...argvs])
  • formatDate 自定义日期格式

const date = ujs.formatDate({format: 'yyyy-mm-dd'})
console.log(date)

'2019-08-24'
1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago