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 🙏

© 2024 – Pkg Stats / Ryan Hefner

common-axios

v0.5.2

Published

基于axios重新封装的axios,支持原生message组件,代码比较轻量

Downloads

17

Readme

npm npm npm axios

一个基于 axios 封装的请求库,支持请求拦截、响应拦截、错误拦截,支持 message 弹窗提示,支持接口防抖。

安装方法

npm install common-axios -S

使用方法

// 导出创建方法
import { createAxios } from "common-axios";

/* 创建 axios 实例 */
const axios =
  createAxios(/** @see http://www.axios-js.com/zh-cn/docs/#axios-create-config **/);

除了上述地址包括配置之外还支持如下字段配置

axios config 拓展属性

| 属性 | 说明 | 类型 | 默认值 | | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -------- | -------------------------------------------------- | | axiosDebounce | 接口防抖同一个接口,同一个请求方式,同样的请求参数发起了多次数据请求,当第一次发起请求的接口没有返回数据之前,后续的接口都会被取消 | boolean | false | | dataKey | 代表返回数据的 key,支持 a.b.c,例如后端返回一个对象 {a:{b:{c:'c'}}},并且可以通过泛型的方式约束返回数据类型 | string | - | | axiosResponseCallback | 拦截成功回调用于全局拦截 | function | (axiosResponse: AxiosResponse) => void | | axiosRequestCallback | 请求成功回调 用于全局拦截 | function | (axiosRequestConfigs: AxiosRequestConfigs) => void |


消息组件配置

| 属性 | 说明 | 类型 | 默认值 | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | ------ | | messageDuration | 消息弹框持续时间 | number(毫秒) | 2000 | | messagePosition | 消息弹框提示位置 | 'left'、'center'、'right' | 'left' | | messageHoverStop | 鼠标划入消息弹框是否停留 | boolean | false | | errorStatusKey | 代表失败的参数的 keyerrorStatusKey存在,errorStatusValue也必须存在,反之亦然。当 errorStatusKey 在后端返回的数据中对应的值和 errorStatusValue 传递的值相等的话就会开启错误 message 组件 | string | - | | errorStatusValue | 代表失败的参数的 valueerrorStatusValue存在,errorStatusKey也必须存在,反之亦然。errorStatusKey在后端返回的数据中对应的值和 errorStatusValue 传递的值相等或者包含存errorStatusKey在后端返回的数据中对应的值在就会开启错误 message 组件 | string,boolean,number,Array<string,boolean,number> | - | | errorMessageKey | 错误消息字段所对应的 key 值 在后端返回的 data 字段中代表错误消息的 key | string | - | | errorMessageValue | 错误消息提示的自定义内容 在后端返回的 data 字段中代表错误消息的 key 多对应的值 错误消息提示的自定义内容优先级高于 errorMessageKey 所对应的内容 | string | - | | errorMessageDuration | 错误消息持续时间(毫秒) 如果配置了messageDuration,则会执行messageDuration所对应的配置 | number | - | | errorMessagePosition | 错误消息提示的位置 如果配置了messagePosition 属性 则执行 messagePosition 的配置 | 'left'、'center'、'right' | 'left' | | errorMessageHoverStop | 鼠标划入错误消息是否停留 如果没有配置该配置,且配置了 messageHoverStop 属性 则执行 messageHoverStop的配置 | boolean | false | | successStatusKey | 代表成功的参数的 keyerrorStatusKey | string | - | | successStatusKey | 代表成功的参数的 key | string | - | | successMessageKey | 成功消息字段所对应的 key 在后端返回的 data 字段中代表成功消息的 key | string | - | | successMessageValue | 成功消息提示的自定义内容 在后端返回的 data 字段中代表成功消息的 key 多对应的值 自定义内容优先级高于 successMessageKey 所对应的内容 | string | - | | successStatusValue | 代表成功的参数的 value errorStatusValue | string,boolean,number,Array<string,boolean,number> | - | | successMessageDuration | 成功消息弹框持续时间(毫秒) 如果没有配置该属性且配置了messageDuration属性,则执行 messageDuration 的配置 | number | 2000 | | successMessagePosition | 成功消息提示的位置 如果没有配置该属性但是配置了messagePosition 属性 则执行 messagePosition 的配置 | 'left'、'center'、'right' | 'left' | | successMessageHoverStop | 鼠标划入成功消息弹框是否停留 如果没有配置该配置,但是配置了 messageHoverStop 属性则执行 messageHoverStop 的配置 | boolean | false |


具体使用方法

/* get请求参数位置以及请求配置 【 head 】请求如同*/
const result = await axiosHelpers.get(<url>,<params>,<config>)

/* post请求参数位置以及请求配置 【 put 】,【 patch 】请求如同 */
const result = await axiosHelpers.post(<url>,<data>,<config>)

/* delete请求参数位置以及请求配置 【 option 】请求如同 */
const result = await axiosHelpers.delete(<url>,<{params:params,data:data}>,<config>)

注意

1.目前来说所有的请求第二个参数均是请求参数,第三个参数均是请求配置,如果不需要请求参数,还请用占位符代替!!!