UNPKG

use-onion

Version:

在任意函数上使用洋葱模型

31 lines (30 loc) 1.07 kB
// export declare function KoaMiddleware<T>(ctx:T, next:()=>Promise<any>) : Promise<any> // type MiddlewaresObj<T>={[K:string] : KoaMiddleware<T>} export default useOnion declare function useOnion<T, H>( ctx :T, confs :{ baseHook ?: {[K in keyof H]: (ctx:T,next:()=>Promise<any>)=> Promise<any>}, customHook ?:{[K in keyof H]: (ctx:T,next:()=>Promise<any>)=> Promise<any>}, hasArgFnNames ?: [keyof H][number][] syncFnNames ?: [keyof H][number][] } ) declare namespace useOnion{ const curr_base_hook :string const has_arg_fn_prefix :string const onerror :string } export function getSyncMidware<T>(fn :(ctx:T)=>any) :(ctx :T, next:Function)=>any; export function getAsyncMidware<T>(fn :(ctx:T)=>any) :(ctx :T, next:Function)=>Promise<any>; /* import baseHook from './baseCrudHooks' import uo from '../main' uo({ form:{ data:{title:'标题',num:233} }, table:{ data:[{id:1,name:'名字'}] } }, {baseHook, customHook:{ arg_delById:ctx=>{ctx} } , hasArgFnNames:[''] } )*/