UNPKG

3.41 kBPlain TextView Raw
1import { Route } from 'vue-router'
2import { Commit } from 'vuex'
3import { stateType } from './types'
4import { AxiosRequestConfig } from 'axios'
5
6//todo state
7export interface state {
8 /**
9 * @用于兼容input组件数据双向绑定问题,
10 * @param event 写入的值
11 * @param fieldName 字段名
12 * @param moduleName 模块名,可选
13 * * 说明:如果moduleName不存在,则fieldName就是模块名
14 */
15 input(event:any, fieldName:string, moduleName?:string):void;
16
17 /**
18 * @设置全局api方法
19 * @param to
20 */
21 $$setRootUrl(to:Route):void;
22
23 [key:string]:any;
24}
25
26export interface airforceState {
27 state:stateType
28}
29
30//todo getters
31export interface getters {
32 airforce(state:airforceState):airforceState
33}
34
35//todo actions
36export interface actionData extends AxiosRequestConfig{
37 moduleName?:string;
38 goods?:any;
39 isFormData?:boolean;
40 axiosBefore?(data:actionData):void;
41 resthen?(result:Response):void;
42 callback?(resultData:Response):void;
43 success?(resultData:Response):void;
44 axiosThen?(resultData:Response,data:actionData,commit:actionsOptions):void;
45 axiosCatch?(resultData:Response,data:actionData,commit:actionsOptions):void;
46 error?(resultData:Response):void;
47}
48
49export interface actionsOptions {
50 commit:Commit
51}
52
53export interface actions {
54 //添加
55 action(action:actionsOptions,data:actionData):any;
56
57 //卸载
58 unload(action:actionsOptions,data:actionData):any;
59}
60
61//todo mutations
62export interface mutationsData {
63 data:actionData;
64}
65export interface mutations {
66 //添加处理
67 AIRFORCE_DO(state:state,data:mutationsData):void;
68
69 //卸载处理
70 AIRFORCE_LEAVE(state:state,data:mutationsData):void;
71}
72
73//todo configsOptions
74export interface configsOptions {
75 debug?:string,
76 filters?:boolean,
77 useStore?:boolean,
78 Mock?:boolean,
79 $$rootUrl?:boolean,
80 initState?:boolean,
81 api?:boolean,
82 $utils?:boolean,
83 axiosBefore(data:actionData):void,
84 axiosThen(res:Request,data:actionData,commit:Commit):void,
85 axiosCatch(err:Request,data:actionData,commit:Commit):void,
86}
87
88//todo utilsOptions
89export interface utilsOptions {
90 isEmail(email):boolean;
91 isEmails(email):boolean;
92 isPhone(phone):boolean;
93 isNumber(value):boolean;
94 isNumbers(value):boolean;
95 is_S(str):boolean;
96 isPhoneFixation(PhoneFixation):boolean;
97 IdCodeValid(code):object;
98 isIdCard(code):object;
99 parseQuery(query:string):object;
100 isIllegality(PhoneFixation):boolean;
101 templateParsing(d, key, val, options):string;
102 exactNum(value):string|number|undefined;
103 dereplicationToArray(data:[]):[];
104 isTel(value):boolean;
105 iss(ary):boolean;
106 filterDs(data:[]):[];
107 imagesRotate(f:File,fn:void):void;
108 NoRound(a:string|number,length:number):number|string;
109 isIosAndroid():boolean;
110 Logout(_this:object):void;
111 SearchParentKey(parent:object, keyName:string):object;
112 escape2Html(str:string):string;
113}
114
115//todo apiOptions
116export interface apiOptions {
117 [key:string]:(...args: any)=>void;
118}
119
120//todo filtersOptions
121export interface filtersOptions {
122 [key:string]:(...args: any)=>any;
123}
124//todo MockConfig
125export interface MockConfig {
126 [key:string]:(mockjs: void)=>any;
127}