@xyzi/request
TypeScript icon, indicating that this package has built-in type declarations

3.1.3 • Public • Published

request

  • request为uni-app的vue3项目、web的vue3项目中的常规请求插件。
  • API为组合式API风格,其中浏览器兼容性同步vue3。
  • 支持请求前置执行/后置执行/异常执行/完成执行
  • 使用Typescript重构,有更友好的语法提示
  • 基础API是默认参数及方法,动态参数及扩展返回
  • 需先创建 createReqeust ,后使用 useRequest

文档

当前文档

当前文档

历史文档

入门

引入

npm install @xyzi/request
  • main.js
import { createRequest } from '@xyzi/request'

createRequest(function(args) {
	// 自定义请求
})

使用

<script setup>
	import { useRequest } from '@xyzi/request'
	const {
		request, //请求方法
		option, //请求参数reactive
		state, //响应参数ref
		isLoading, //是否请求中ref
		isError, //是否失败ref
	} = useRequest(() => ({
		option: { //请求参数初始化
			url: "/",
			data: {},
		},
		state: [] //响应参数初始化
		isLoading: false //是否请求中初始化
	}))
 </script>

动态参数

名称 描述 版本
lifetime 执行阶段 3.0.0
debounce 防抖请求 3.0.0
throttle 节流请求 3.0.0
lifecycle 生命周期钩子执行请求 3.0.0
watchOption 监听 option 执行请求 3.0.0
watchtruly 监听函数返回值为truly执行 3.0.0
emit 发布订阅请求 3.0.0
loop 轮询请求 3.0.0
retry 错误重试请求 3.0.0
extra 自定义参数、方法 3.0.0
getters 计算属性 3.0.0
initOptions 初始化参数 3.0.0
storage 持久化参数 3.1.0
emitData 发布订阅 option.data 3.1.0

其他

uniapp

  • createRequest
createRequest((args) => new Promise((success, fail) => uni.request(Object.assign(args, { success, fail }))))
createRequest('upload', (args) => new Promise((success, fail) => uni.uploadFile(Object.assign(args, { success, fail }))))

axios

  • createRequest
createRequest((args) => axios(args))

Package Sidebar

Install

npm i @xyzi/request

Weekly Downloads

0

Version

3.1.3

License

ISC

Unpacked Size

36 kB

Total Files

5

Last publish

Collaborators

  • xyzi