0.1.4 • Published 5 years ago
dmj-frist-test v0.1.4
Installation
npm install --save-dev dmj-frist-test
Usage
import Pencil from 'dmj-frist-test'
Function 函数的用途及使用方法
query(name, querystring)
- Function for gets the value of the specified name in the specified querystring
- example: Pencil.query('name', '?name=js') //return 'js'
serialize(data)
- Function for turn the object into a url string
- example: Pencil.serialize({hello: 'js'}) //return '?hello=js'
$(selector)
- Function for simulating jQuery
- example: Pencil.$(selector) //return {DOM|undefined}
removeNode(node)
- Function for Deleting DOM node
- example: Pencil.removeNode(node) //return {DOM}
insertAfter(node)
- Function for inserting the node node after the target node
- example: Pencil.insertAfter(node, target) //return true or false
addClass(node, className)
- Function for add class name
- example: Pencil.addClass(node, className) //return true or false
removeClass(node, className)
- Function for remove class name
- example: Pencil.removeClass(node, className) //return true or false
getAbsoluteUrl(url)
- Function for get absolute url
- example: Pencil.getAbsoluteUrl('/jerojiang') //return 'http://imweb.io/jerojiang'
debounce(callback, time)
- Function for avoiding shake
- example: test('test true', () => { const debounce = Pencil.debounce jest.useFakeTimers() // 声明语句,启用jest伪装计时器函数,因为使用了advanceTimersByTime() const callback = jest.fn() // 声明语句,使用jest伪装函数 const createDebounce = debounce(callback, 300) expect(callback).not.toBeCalled() // callback还未被调用 for (let i = 0; i < 11; i++) { // 循环执行createDebounce 11次,每次都在经过299ms时setTimeout被刷新 createDebounce() jest.advanceTimersByTime(299) // 过了299ms } expect(callback).not.toBeCalled() // callback还未被调用 jest.advanceTimersByTime(1) // 再过1ms expect(callback).toBeCalled() // callback被调用 expect(callback).toHaveBeenCalledTimes(1) // callback只被调用1次 })
removeItemByIndex(index, arr)
forEach(item, callBack)
- jest mock
- example: let mockFun = jest.fn() Pencil.forEach(1, 2, 3, mockFun) //mockFun作为回调函数