cyl-hooks-tools
首页
  • useApi
  • useCo
  • useCollector
  • useWebsocket
  • useIndexedDB
  • NinePatch
  • parseJsonGraceful
  • sleep
  • logger
  • makeFriendly
  • formatSeconds
  • Uint8ArrayToString
  • dataSourceSliceOfECharts
  • ninePath
更新日志
首页
  • useApi
  • useCo
  • useCollector
  • useWebsocket
  • useIndexedDB
  • NinePatch
  • parseJsonGraceful
  • sleep
  • logger
  • makeFriendly
  • formatSeconds
  • Uint8ArrayToString
  • dataSourceSliceOfECharts
  • ninePath
更新日志
  • useApi

    • useApi
    • useApiAnyLoading
    • useApiAnyError
    • useApiState
  • useCo

    • useCoCallback
    • useCoEffect
  • useCollector

    • useCollector
    • useApiCollectionFetcher
  • useWebsocket
  • useIndexedDB
  • hooks
  • useApi
cyl
2023-03-28

useApiAnyLoading

注意

使用该hooks之前,请确保按照文档方式初始化了

这个hooks用于获取一个组件的所有请求状态,意思就是一个组件所有的请求只要有一个没有完成它就还是请求中。

    
    import {IHttpClient,IContext} from "cyl-hooks-tools"
    
    export interface Test {
        id:number
        name:string
        createTime:number
    }
    
    export function getTest(ctx:IContext<IHttpClient,object>,id:number):Promise<Test>{
        return ctx.get("https://chuyanlon.github.io/cyl-hooks-tools-doc/api/test.json",{
           id
        })
    }
    
    
    
    import {useApi,useApiState,useApiAnyLoading,IHttpClient,IContext} from "cyl-hooks-tools"
    
    import {getTest} from "./test.ts"
    
    export default function Component(){
        const api = useApi<IContext<IHttpClient,object>>()
        const [id,setId] = useState(0)
        const [test] = useApiState(api,getTest,id)
        const AnyLoading = useApiAnyLoading(api)
        return <div>
            <div>状态:{AnyLoading ? "请求中" : "请求完成"}</div>
            <div>结果:{JSON.stringify(test)}</div>
        </div>
    }
    
    
    // Make sure to add code blocks to your code group
    上次更新: 2023/05/08, 19:10:56
    useApi
    useApiAnyError

    ← useApi useApiAnyError→

    Theme by Vdoing | Copyright © 2023-2025 cyl-hooks-tools
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式