npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

pes-utils

v1.0.0

Published

打包的工具库

Downloads

7

Readme

概述

提供工具方法提供业务使用,所有方法均经过自动化测试

快速使用

syarn add "pes-utils" -S
  1. 使用CDN方式
// 版本号和package.json的version保持一致
const { filter, storage, query } = window.utils.defautl
  1. use 到项目中
// 全部引用
import utils from 'pes-utils'
Vue.use(utils)
// or
// 根据需要引入对应的方法
import { filter, storage, query, tools }  from 'pes-utils'
Vue.prototype.$filter = Vue.filter = filter

// 在项目中使用
this.$filter.formatAmount
this.$storage.get()
  1. 使用reset.css
import '@wuyxp/utils/dist/style/reset.css'

API

filter

| 方法 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | | formatAmount | 格式化金额       | number                 | | | removeEmptyArgInObj | 清除对象里面没有值的属性 | Array | Object | | | get | 从对象中获取长路径的值 | (source: Array | Object, path: string, defaultVaule: any) | | | prefixInteger | 数字前面要补0 | (num: number, length: number) | | | uniqBy | 对数组进行去重排序 | (arr: Array, fn: Function | string) | 第二个参数用于根据什么key去排序,或者是一个函数,根据函数执行后的结果去排序 | | conver | 格式化B-KB-MB-GB| number | |

tools

| 方法 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | | isEmptyObject | 判读对象是否为空| Object | | | debounce | 函数防抖 | (function, number, options={leading:false}) | 默认时间是500s, options 传入leading:true 可以立即调用| | throttle | 函数节流| (function, number)| 默认时间是300s| | isTest | 判断当前环境是否为测试环境 | string| 默认是 production | | clone | 深度拷贝对象 | Object | 对于对象和数组是深度拷贝,否则返回引用 |

storage

| 方法 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | |get | 获取当前域名下指定的cookie | key: string | | |set | 设置当前域名下cookie的值| (key: string, val: string) | | |del | 删除当前域名下指定的cookie| key: string | | |all | 获取当前域名下所有的cookie| - | | |empty | 清空当前域名下所有的cookie | - | |

query

| 方法 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | |parseQuery| 将path路径的参数部分转换为对象 | path: string | | |stringifyQuery| 将对象转化为path路径的参数| Object | | |decodeParam| 更彻底的decodeURIComponent方法 | path: string | 兼容解码"%" |

request

request 依赖外部引入的axios,也就是项目中必须使用外链的方式去引入axios

// 此种方法即将废弃
import { request } from 'pes-utils'
const baseURL = 'https://x.com'
const api = request(baseURL)
api.get(xxx)

// 使用如下方法
import { createRequest } from 'pes-utils'
const request = createRequest(axios)

const baseURL = 'https://x.com'
const api = request(baseURL)
api.get(xxx)

qs

utils 引入过qs了,所以项目中引入utils后使用qs的时候也正常的去引用use,那么qs就会挂载到Vue上,使用方法 https://github.com/ljharb/qs

createRequest 方法参数

| 配置 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | |axios| 创建request方法 | axios实例,或者是不传 | 如果不传,那么axios就默认是使用script引入,如果使用import 引入的axios,那么则需要去传入当前参数 |

request 方法参数

| 配置 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | |config| 设置基本的配置 | string, Config | 如果是传入字符串,那么就会默认的是baseUrl,如果是对象那么是Config | |axiosSetting| axios的config配置| axios Config | 会覆盖所有默认的设置

| Config | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | |baseUrl| 设置基本路径 | string | 如果请求方法传入绝对路径,那么会覆盖baseUrl | |logoutAction| 返回未登录时的时间 | function | | |errorAction| 其他的请求错误事件 | function | | |failureAction| 请求失败的事件 | function | | |AuthorizationV2| 需要去cookie的哪个值作为token | string | 'cloudToken' 或者 'seaToken' | |token|直接传入token 值 | string | | |isRequestArrayRepeat| 是否对数组处理中括号 | boolean | 默认 true | |env | 根据当前的环境传入 | 一般传入 process.env.NODE_ENV| 默认production |

| 方法 | 作用 | 参数 | 说明 | |---------- |-------- |---------- |------------- | |get| get 请求 | url, param | | |post| post 请求 | url, param | | |JPost| json请求 | url, param | | |blob| 下载blob文件 | url, param | |