@whitesev/utils 2.8.2 → 2.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +176 -176
- package/dist/index.amd.js +283 -776
- package/dist/index.amd.js.map +1 -1
- package/dist/index.amd.min.js +2 -0
- package/dist/index.amd.min.js.map +1 -0
- package/dist/index.cjs.js +283 -776
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.cjs.min.js +2 -0
- package/dist/index.cjs.min.js.map +1 -0
- package/dist/index.esm.js +283 -776
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +2 -0
- package/dist/index.esm.min.js.map +1 -0
- package/dist/index.iife.js +283 -776
- package/dist/index.iife.js.map +1 -1
- package/dist/index.iife.min.js +2 -0
- package/dist/index.iife.min.js.map +1 -0
- package/dist/index.system.js +283 -776
- package/dist/index.system.js.map +1 -1
- package/dist/index.system.min.js +2 -0
- package/dist/index.system.min.js.map +1 -0
- package/dist/index.umd.js +283 -776
- package/dist/index.umd.js.map +1 -1
- package/dist/index.umd.min.js +2 -0
- package/dist/index.umd.min.js.map +1 -0
- package/dist/types/src/Utils.d.ts +132 -448
- package/dist/types/src/UtilsGMCookie.d.ts +4 -0
- package/dist/types/src/UtilsGMMenu.d.ts +3 -6
- package/dist/types/src/types/Httpx.d.ts +1344 -1344
- package/dist/types/src/types/Log.d.ts +19 -19
- package/dist/types/src/types/Progress.d.ts +20 -20
- package/dist/types/src/types/React.d.ts +119 -119
- package/dist/types/src/types/TryCatch.d.ts +9 -9
- package/dist/types/src/types/UtilsGMCookie.d.ts +93 -93
- package/dist/types/src/types/UtilsGMMenu.d.ts +77 -77
- package/dist/types/src/types/Vue2.d.ts +166 -166
- package/dist/types/src/types/WindowApi.d.ts +14 -14
- package/dist/types/src/types/ajaxHooker.d.ts +153 -151
- package/dist/types/src/types/env.d.ts +7 -7
- package/dist/types/src/types/global.d.ts +31 -31
- package/package.json +11 -10
- package/src/ColorConversion.ts +105 -105
- package/src/CommonUtil.ts +280 -280
- package/src/DOMUtils.ts +251 -251
- package/src/Dictionary.ts +153 -153
- package/src/GBKEncoder.ts +108 -108
- package/src/Hooks.ts +73 -73
- package/src/Httpx.ts +1457 -1457
- package/src/LockFunction.ts +62 -62
- package/src/Log.ts +258 -258
- package/src/Progress.ts +108 -108
- package/src/TryCatch.ts +86 -86
- package/src/Utils.ts +3827 -4773
- package/src/UtilsCommon.ts +14 -14
- package/src/UtilsGMCookie.ts +272 -254
- package/src/UtilsGMMenu.ts +441 -445
- package/src/Vue.ts +233 -233
- package/src/WindowApi.ts +59 -59
- package/src/indexedDB.ts +497 -497
- package/src/types/Httpx.d.ts +1344 -1344
- package/src/types/Log.d.ts +19 -19
- package/src/types/Progress.d.ts +20 -20
- package/src/types/React.d.ts +119 -119
- package/src/types/TryCatch.d.ts +9 -9
- package/src/types/UtilsGMCookie.d.ts +93 -93
- package/src/types/UtilsGMMenu.d.ts +77 -77
- package/src/types/Vue2.d.ts +166 -166
- package/src/types/WindowApi.d.ts +14 -14
- package/src/types/ajaxHooker.d.ts +153 -151
- package/src/types/env.d.ts +7 -7
- package/src/types/global.d.ts +31 -31
- package/dist/types/src/types/Event.d.ts +0 -188
- package/src/types/Event.d.ts +0 -188
|
@@ -9,7 +9,6 @@ import { LockFunction } from "./LockFunction";
|
|
|
9
9
|
import { Log } from "./Log";
|
|
10
10
|
import { Progress } from "./Progress";
|
|
11
11
|
import { UtilsDictionary } from "./Dictionary";
|
|
12
|
-
import type { DOMUtils_EventType } from "./types/Event";
|
|
13
12
|
import type { UtilsAjaxHookResult } from "./types/ajaxHooker";
|
|
14
13
|
import { Vue } from "./Vue";
|
|
15
14
|
import { type ArgsType, type JSTypeNames, type UtilsOwnObject } from "./types/global";
|
|
@@ -21,15 +20,6 @@ declare class Utils {
|
|
|
21
20
|
constructor(option?: WindowApiOption);
|
|
22
21
|
/** 版本号 */
|
|
23
22
|
version: string;
|
|
24
|
-
/**
|
|
25
|
-
* 在页面中增加style元素,如果html节点存在子节点,添加子节点第一个,反之,添加到html节点的子节点最后一个
|
|
26
|
-
* @param cssText css字符串
|
|
27
|
-
* @returns 返回添加的CSS标签
|
|
28
|
-
* @example
|
|
29
|
-
* Utils.GM_addStyle("html{}");
|
|
30
|
-
* > <style type="text/css">html{}</style>
|
|
31
|
-
*/
|
|
32
|
-
addStyle(cssText: string): HTMLStyleElement;
|
|
33
23
|
/**
|
|
34
24
|
* JSON数据从源端替换到目标端中,如果目标端存在该数据则替换,不添加,返回结果为目标端替换完毕的结果
|
|
35
25
|
* @param target 目标数据
|
|
@@ -57,7 +47,7 @@ declare class Utils {
|
|
|
57
47
|
* ajax劫持库,支持xhr和fetch劫持。
|
|
58
48
|
* + 来源:https://bbs.tampermonkey.net.cn/thread-3284-1-1.html
|
|
59
49
|
* + 作者:cxxjackie
|
|
60
|
-
* + 版本:1.4.
|
|
50
|
+
* + 版本:1.4.8
|
|
61
51
|
* + 旧版本:1.2.4
|
|
62
52
|
* + 文档:https://scriptcat.org/zh-CN/script-show-page/637/
|
|
63
53
|
* @param useOldVersion 是否使用旧版本,默认false
|
|
@@ -71,17 +61,6 @@ declare class Utils {
|
|
|
71
61
|
* @param view 触发的事件目标
|
|
72
62
|
*/
|
|
73
63
|
canvasClickByPosition(canvasElement: HTMLCanvasElement, clientX?: number | string, clientY?: number | string, view?: Window & typeof globalThis): void;
|
|
74
|
-
/**
|
|
75
|
-
* 【手机】检测点击的地方是否在该元素区域内
|
|
76
|
-
* @param element 需要检测的元素
|
|
77
|
-
* @returns
|
|
78
|
-
* + true 点击在元素上
|
|
79
|
-
* + false 未点击在元素上
|
|
80
|
-
* @example
|
|
81
|
-
* Utils.checkUserClickInNode(document.querySelector(".xxx"));
|
|
82
|
-
* > false
|
|
83
|
-
**/
|
|
84
|
-
checkUserClickInNode(element: Element | Node | HTMLElement): boolean;
|
|
85
64
|
/**
|
|
86
65
|
* 复制formData数据
|
|
87
66
|
* @param formData 需要clone的数据
|
|
@@ -129,18 +108,6 @@ declare class Utils {
|
|
|
129
108
|
* @param delay 防抖判定时间(毫秒),默认是0ms
|
|
130
109
|
*/
|
|
131
110
|
debounce<A extends any[], R>(fn: (...args: A) => R, delay?: number): (...args: A) => void;
|
|
132
|
-
/**
|
|
133
|
-
* 删除某个父元素,父元素可能在上层或上上层或上上上层...
|
|
134
|
-
* @param element 当前元素
|
|
135
|
-
* @param targetSelector 判断是否满足父元素,参数为当前处理的父元素,满足返回true,否则false
|
|
136
|
-
* @returns
|
|
137
|
-
* + true 已删除
|
|
138
|
-
* + false 未删除
|
|
139
|
-
* @example
|
|
140
|
-
* Utils.deleteParentNode(document.querySelector("a"),".xxx");
|
|
141
|
-
* > true
|
|
142
|
-
**/
|
|
143
|
-
deleteParentNode(element: Node | HTMLElement | Element | null, targetSelector: string): boolean;
|
|
144
111
|
/**
|
|
145
112
|
* 字典
|
|
146
113
|
* @example
|
|
@@ -154,28 +121,6 @@ declare class Utils {
|
|
|
154
121
|
* dictionary.concat(dictionary2);
|
|
155
122
|
**/
|
|
156
123
|
Dictionary: typeof UtilsDictionary;
|
|
157
|
-
/**
|
|
158
|
-
* 主动触发事件
|
|
159
|
-
* @param element 元素
|
|
160
|
-
* @param eventName 事件名称,可以是字符串,也可是字符串格式的列表
|
|
161
|
-
* @param details (可选)赋予触发的Event的额外属性
|
|
162
|
-
* + true 使用Proxy代理Event并设置获取isTrusted永远为True
|
|
163
|
-
* + false (默认) 不对Event进行Proxy代理
|
|
164
|
-
* @example
|
|
165
|
-
* Utils.dispatchEvent(document.querySelector("input","input"))
|
|
166
|
-
*/
|
|
167
|
-
dispatchEvent(element: HTMLElement | Document, eventName: DOMUtils_EventType | DOMUtils_EventType[], details?: any): void;
|
|
168
|
-
/**
|
|
169
|
-
* 主动触发事件
|
|
170
|
-
* @param element 元素
|
|
171
|
-
* @param eventName 事件名称,可以是字符串,也可是字符串格式的列表
|
|
172
|
-
* @param details (可选)赋予触发的Event的额外属性
|
|
173
|
-
* + true 使用Proxy代理Event并设置获取isTrusted永远为True
|
|
174
|
-
* + false (默认) 不对Event进行Proxy代理
|
|
175
|
-
* @example
|
|
176
|
-
* Utils.dispatchEvent(document.querySelector("input","input"))
|
|
177
|
-
*/
|
|
178
|
-
dispatchEvent(element: HTMLElement | Document, eventName: string, details?: any): void;
|
|
179
124
|
/**
|
|
180
125
|
* 下载base64格式的数据
|
|
181
126
|
* @param base64Data 需要转换的base64数据
|
|
@@ -200,25 +145,6 @@ declare class Utils {
|
|
|
200
145
|
* > true
|
|
201
146
|
**/
|
|
202
147
|
findWebPageVisibleText(str?: string, caseSensitive?: boolean): boolean | void;
|
|
203
|
-
/**
|
|
204
|
-
* 定位元素上的字符串,返回一个迭代器
|
|
205
|
-
* @param element 目标元素
|
|
206
|
-
* @param text 需要定位的字符串
|
|
207
|
-
* @param filter (可选)过滤器函数,返回值为true是排除该元素
|
|
208
|
-
* @example
|
|
209
|
-
* let textIterator = Utils.findElementsWithText(document.documentElement,"xxxx");
|
|
210
|
-
* textIterator.next();
|
|
211
|
-
* > {value: ?HTMLElement, done: boolean, next: Function}
|
|
212
|
-
*/
|
|
213
|
-
findElementsWithText<T extends HTMLElement | Element | Node>(element: T, text: string, filter?: (element: T) => boolean): Generator<HTMLElement | ChildNode, void, any>;
|
|
214
|
-
/**
|
|
215
|
-
* 判断该元素是否可见,如果不可见,向上找它的父元素直至找到可见的元素
|
|
216
|
-
* @param element
|
|
217
|
-
* @example
|
|
218
|
-
* let visibleElement = Utils.findVisibleElement(document.querySelector("a.xx"));
|
|
219
|
-
* > <HTMLElement>
|
|
220
|
-
*/
|
|
221
|
-
findVisibleElement(element: HTMLElement | Element | Node): HTMLElement | null;
|
|
222
148
|
/**
|
|
223
149
|
* 格式化byte为KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB
|
|
224
150
|
* @param byteSize 字节
|
|
@@ -324,14 +250,6 @@ declare class Utils {
|
|
|
324
250
|
* > 测试
|
|
325
251
|
*/
|
|
326
252
|
GBKEncoder: typeof GBKEncoder;
|
|
327
|
-
/**
|
|
328
|
-
* 获取 transitionend 的在各个浏览器的兼容名
|
|
329
|
-
*/
|
|
330
|
-
getTransitionEndNameList(): string[];
|
|
331
|
-
/**
|
|
332
|
-
* 获取 animationend 的在各个浏览器的兼容名
|
|
333
|
-
*/
|
|
334
|
-
getAnimationEndNameList(): string[];
|
|
335
253
|
/**
|
|
336
254
|
* 获取NodeList或Array对象中的最后一个的值
|
|
337
255
|
* @param targetObj
|
|
@@ -383,14 +301,6 @@ declare class Utils {
|
|
|
383
301
|
* > 0
|
|
384
302
|
*/
|
|
385
303
|
getDaysDifference(timestamp1?: number, timestamp2?: number, type?: "年" | "月" | "天" | "时" | "分" | "秒"): number;
|
|
386
|
-
/**
|
|
387
|
-
* 获取元素的选择器字符串
|
|
388
|
-
* @param element
|
|
389
|
-
* @example
|
|
390
|
-
* Utils.getElementSelector(document.querySelector("a"))
|
|
391
|
-
* > '.....'
|
|
392
|
-
*/
|
|
393
|
-
getElementSelector(element: HTMLElement): string;
|
|
394
304
|
/**
|
|
395
305
|
* 获取最大值
|
|
396
306
|
* @example
|
|
@@ -528,9 +438,9 @@ declare class Utils {
|
|
|
528
438
|
* @param element 需要获取的目标元素
|
|
529
439
|
* @returns
|
|
530
440
|
* @example
|
|
531
|
-
* Utils.
|
|
441
|
+
* Utils.getReactInstance(document.querySelector("input"))?.reactProps?.onChange({target:{value:"123"}});
|
|
532
442
|
*/
|
|
533
|
-
|
|
443
|
+
getReactInstance(element: HTMLElement | Element): ReactInstance;
|
|
534
444
|
/**
|
|
535
445
|
* 获取对象上的Symbol属性,如果没设置keyName,那么返回一个对象,对象是所有遍历到的Symbol对象
|
|
536
446
|
* @param target 目标对象
|
|
@@ -999,25 +909,25 @@ declare class Utils {
|
|
|
999
909
|
**/
|
|
1000
910
|
mergeArrayToString<T>(data: T[], handleFunc?: ((val: T) => T) | keyof T): string;
|
|
1001
911
|
/**
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
"callback":(mutations, observer)=>{},
|
|
1013
|
-
"config":{childList:true,attributes:true}}
|
|
1014
|
-
);
|
|
1015
|
-
* @example
|
|
1016
|
-
Utils.mutationObserver($("div.xxxx"),{
|
|
912
|
+
* 监听页面元素改变并处理
|
|
913
|
+
* @param target 需要监听的元素,如果不存在,可以等待它出现
|
|
914
|
+
* @param observer_config MutationObserver的配置
|
|
915
|
+
* @example
|
|
916
|
+
Utils.mutationObserver(document.querySelector("div.xxxx"),{
|
|
917
|
+
"callback":(mutations, observer)=>{},
|
|
918
|
+
"config":{childList:true,attributes:true}
|
|
919
|
+
});
|
|
920
|
+
* @example
|
|
921
|
+
Utils.mutationObserver(document.querySelectorAll("div.xxxx"),{
|
|
1017
922
|
"callback":(mutations, observer)=>{},
|
|
1018
923
|
"config":{childList:true,attributes:true}}
|
|
1019
|
-
|
|
1020
|
-
|
|
924
|
+
);
|
|
925
|
+
* @example
|
|
926
|
+
Utils.mutationObserver($("div.xxxx"),{
|
|
927
|
+
"callback":(mutations, observer)=>{},
|
|
928
|
+
"config":{childList:true,attributes:true}}
|
|
929
|
+
);
|
|
930
|
+
**/
|
|
1021
931
|
mutationObserver(target: HTMLElement | Node | NodeList | Document, observer_config: {
|
|
1022
932
|
/**
|
|
1023
933
|
* observer的配置
|
|
@@ -1168,33 +1078,24 @@ declare class Utils {
|
|
|
1168
1078
|
*/
|
|
1169
1079
|
parseFromString(text: string, mimeType?: "text/html" | "text/xml" | "application/xml" | "application/xhtml+xml" | "image/svg+xml"): HTMLElement | XMLDocument | SVGElement;
|
|
1170
1080
|
/**
|
|
1171
|
-
*
|
|
1172
|
-
*
|
|
1173
|
-
*
|
|
1174
|
-
*/
|
|
1175
|
-
parseStringToRegExpString(text: string): string;
|
|
1176
|
-
/**
|
|
1177
|
-
* 阻止事件传递
|
|
1178
|
-
* @param element 要进行处理的元素
|
|
1179
|
-
* @param eventNameList (可选)要阻止的事件名|列表
|
|
1180
|
-
* @param capture (可选)是否捕获,默认false
|
|
1181
|
-
* @example
|
|
1182
|
-
* Utils.preventEvent(document.querySelector("a"),"click")
|
|
1081
|
+
* 字符串转正则,用于把字符串中不规范的字符进行转义
|
|
1082
|
+
* @param text 需要进行转换的字符串
|
|
1083
|
+
* @param flags (可选)正则标志,默认`gi`
|
|
1183
1084
|
* @example
|
|
1184
|
-
* Utils.
|
|
1085
|
+
* Utils.toRegExp("^替换$");
|
|
1086
|
+
* > /^替换$/gi
|
|
1185
1087
|
*/
|
|
1186
|
-
|
|
1088
|
+
toRegExp(text: string | RegExp, flags?: "g" | "i" | "m" | "u" | "y" | string): RegExp;
|
|
1187
1089
|
/**
|
|
1188
|
-
*
|
|
1189
|
-
*
|
|
1190
|
-
*
|
|
1191
|
-
* @param
|
|
1192
|
-
* @example
|
|
1193
|
-
* Utils.preventEvent(document.querySelector("a"),"click")
|
|
1090
|
+
* 将字符串进行正则转义
|
|
1091
|
+
* 例如:^替换$
|
|
1092
|
+
* 转换:\^替换\$
|
|
1093
|
+
* @param text 需要转义的字符串
|
|
1194
1094
|
* @example
|
|
1195
|
-
* Utils.
|
|
1095
|
+
* Utils.toRegExpStr("^替换$");
|
|
1096
|
+
* > \^替换\$
|
|
1196
1097
|
*/
|
|
1197
|
-
|
|
1098
|
+
toRegExpStr(text: string): string;
|
|
1198
1099
|
/**
|
|
1199
1100
|
* 在canvas元素节点上绘制进度圆圈
|
|
1200
1101
|
* @example
|
|
@@ -1203,54 +1104,60 @@ declare class Utils {
|
|
|
1203
1104
|
* **/
|
|
1204
1105
|
Progress: typeof Progress;
|
|
1205
1106
|
/**
|
|
1206
|
-
*
|
|
1107
|
+
* 劫持所有Event的isTrust为true,脚本注入时刻请设置为`ducument-start`
|
|
1207
1108
|
* @param isTrustValue (可选)让isTrusted为true
|
|
1208
|
-
* @param filter
|
|
1109
|
+
* @param filter (可选)过滤出需要的事件名,返回值true为需要,返回值false为不需要,默认click事件为需要的
|
|
1209
1110
|
* @example
|
|
1210
|
-
* Utils.
|
|
1111
|
+
* Utils.hookEvent_isTrusted()
|
|
1211
1112
|
*/
|
|
1212
|
-
|
|
1113
|
+
hookEvent_isTrusted(isTrustValue?: boolean, filter?: (typeName: string) => boolean): void;
|
|
1213
1114
|
/**
|
|
1214
1115
|
* 将数字进行正/负转换
|
|
1215
1116
|
* @param num 需要进行转换的数字
|
|
1216
1117
|
*/
|
|
1217
1118
|
reverseNumber(num: number): number;
|
|
1218
|
-
/**
|
|
1219
|
-
* 将元素上的文本或元素使用光标进行选中
|
|
1220
|
-
*
|
|
1221
|
-
* 注意,如果设置startIndex和endIndex,且元素上并无可选则的坐标,那么会报错
|
|
1222
|
-
* @param element 目标元素
|
|
1223
|
-
* @param childTextNode 目标元素下的#text元素
|
|
1224
|
-
* @param startIndex (可选)开始坐标,可为空
|
|
1225
|
-
* @param endIndex (可选)结束坐标,可为空
|
|
1226
|
-
*/
|
|
1227
|
-
selectElementText(element: HTMLElement | Element | Node, childTextNode?: ChildNode, startIndex?: number, endIndex?: number): void;
|
|
1228
1119
|
/**
|
|
1229
1120
|
* 复制到剪贴板
|
|
1230
1121
|
* @param data 需要复制到剪贴板的文本
|
|
1231
1122
|
* @param info (可选)默认:text/plain
|
|
1232
1123
|
* @example
|
|
1233
|
-
* Utils.
|
|
1124
|
+
* Utils.copy({1:2});
|
|
1234
1125
|
* > {"1":2}
|
|
1235
1126
|
* @example
|
|
1236
|
-
* Utils.
|
|
1127
|
+
* Utils.copy( ()=>{
|
|
1237
1128
|
* console.log(1)
|
|
1238
1129
|
* });
|
|
1239
1130
|
* > ()=>{console.log(1)}
|
|
1240
1131
|
* @example
|
|
1241
|
-
* Utils.
|
|
1132
|
+
* Utils.copy("xxxx");
|
|
1242
1133
|
* > xxxx
|
|
1243
1134
|
* @example
|
|
1244
|
-
* Utils.
|
|
1135
|
+
* Utils.copy("xxxx","html");
|
|
1245
1136
|
* > xxxx
|
|
1246
1137
|
* @example
|
|
1247
|
-
* Utils.
|
|
1138
|
+
* Utils.copy("xxxx","text/plain");
|
|
1248
1139
|
* > xxxx
|
|
1249
1140
|
**/
|
|
1250
|
-
|
|
1141
|
+
copy(data: any, info?: {
|
|
1251
1142
|
type: string;
|
|
1252
1143
|
mimetype: string;
|
|
1253
1144
|
} | string): Promise<boolean>;
|
|
1145
|
+
/**
|
|
1146
|
+
* 获取剪贴板信息
|
|
1147
|
+
* @example
|
|
1148
|
+
* await Utils.getClipboardInfo();
|
|
1149
|
+
* > { error: null, content: "剪贴板内容" }
|
|
1150
|
+
*/
|
|
1151
|
+
getClipboardInfo(): Promise<{
|
|
1152
|
+
/**
|
|
1153
|
+
* 错误信息,如果为null,则表示读取成功
|
|
1154
|
+
*/
|
|
1155
|
+
error: Error | null;
|
|
1156
|
+
/**
|
|
1157
|
+
* 剪贴板内容
|
|
1158
|
+
*/
|
|
1159
|
+
content: string;
|
|
1160
|
+
}>;
|
|
1254
1161
|
/**
|
|
1255
1162
|
* 【异步函数】等待N秒执行函数
|
|
1256
1163
|
* @param callback 待执行的函数(字符串)
|
|
@@ -1296,7 +1203,7 @@ declare class Utils {
|
|
|
1296
1203
|
*/
|
|
1297
1204
|
exitFullScreen($el?: HTMLElement | HTMLDocument | Document): Promise<void>;
|
|
1298
1205
|
/**
|
|
1299
|
-
*
|
|
1206
|
+
* 数组按照内部某个值的大小比对排序,该函数会改变原数组
|
|
1300
1207
|
* @param data 数据|获取数据的方法
|
|
1301
1208
|
* @param getPropertyValueFunc 数组内部项的某个属性的值的方法,参数为这个项
|
|
1302
1209
|
* @param sortByDesc (可选)排序方式
|
|
@@ -1311,12 +1218,6 @@ declare class Utils {
|
|
|
1311
1218
|
* > [{time: '2022-1-1'},{time: '2022-2-2'}]
|
|
1312
1219
|
**/
|
|
1313
1220
|
sortListByProperty<T>(data: T[], getPropertyValueFunc: string | ((value: T) => any), sortByDesc?: boolean): T[];
|
|
1314
|
-
/**
|
|
1315
|
-
* 字符串转正则,用于把字符串中不规范的字符进行转义
|
|
1316
|
-
* @param targetString 需要进行转换的字符串
|
|
1317
|
-
* @param flags 正则标志
|
|
1318
|
-
*/
|
|
1319
|
-
stringToRegular(targetString: string | RegExp, flags?: "g" | "i" | "m" | "u" | "y" | string): RegExp;
|
|
1320
1221
|
/**
|
|
1321
1222
|
* 字符串首字母转大写
|
|
1322
1223
|
* @param targetString 目标字符串
|
|
@@ -1334,10 +1235,10 @@ declare class Utils {
|
|
|
1334
1235
|
startsWith(target: string, searchString: string | RegExp | string[], position?: number): boolean;
|
|
1335
1236
|
/**
|
|
1336
1237
|
* 字符串首字母转小写
|
|
1337
|
-
* @param
|
|
1238
|
+
* @param text 目标字符串
|
|
1338
1239
|
* @param otherStrToLowerCase (可选)剩余部分字符串转大写,默认false
|
|
1339
1240
|
*/
|
|
1340
|
-
|
|
1241
|
+
firstLetterToLowercase(text: string, otherToUpperCase?: boolean): string;
|
|
1341
1242
|
/**
|
|
1342
1243
|
* 字符串转Object对象,类似'{"test":""}' => {"test":""}
|
|
1343
1244
|
* @param data
|
|
@@ -1424,298 +1325,63 @@ declare class Utils {
|
|
|
1424
1325
|
**/
|
|
1425
1326
|
waitArrayLoopToEnd(data: any[] | HTMLElement[], handleFunc: (...args: any[]) => any): Promise<void[]>;
|
|
1426
1327
|
/**
|
|
1427
|
-
*
|
|
1428
|
-
*
|
|
1429
|
-
*
|
|
1430
|
-
* @param checkFn 检测的函数
|
|
1431
|
-
* @param timeout 超时时间,默认0
|
|
1432
|
-
* @param parent (可选)父元素,默认document
|
|
1433
|
-
* @example
|
|
1434
|
-
* Utils.wait(()=> {
|
|
1435
|
-
* let $test = document.querySelector("#test");
|
|
1436
|
-
* return {
|
|
1437
|
-
* success: $test !== null,
|
|
1438
|
-
* data: $test
|
|
1439
|
-
* }
|
|
1440
|
-
* })
|
|
1441
|
-
*/
|
|
1442
|
-
wait<T>(checkFn: (...args: any[]) => {
|
|
1443
|
-
/**
|
|
1444
|
-
* 是否检测成功
|
|
1445
|
-
*/
|
|
1446
|
-
success: boolean;
|
|
1447
|
-
/**
|
|
1448
|
-
* 返回的值
|
|
1449
|
-
*/
|
|
1450
|
-
data: T;
|
|
1451
|
-
}, timeout?: null | undefined, parent?: Node | Element | Document | HTMLElement): Promise<T>;
|
|
1452
|
-
wait<T>(checkFn: (...args: any[]) => {
|
|
1453
|
-
/**
|
|
1454
|
-
* 是否检测成功
|
|
1455
|
-
*/
|
|
1456
|
-
success: boolean;
|
|
1457
|
-
/**
|
|
1458
|
-
* 返回的值
|
|
1459
|
-
*/
|
|
1460
|
-
data: T;
|
|
1461
|
-
}, timeout?: number, parent?: Node | Element | Document | HTMLElement): Promise<T | null>;
|
|
1462
|
-
/**
|
|
1463
|
-
* 等待元素出现
|
|
1464
|
-
* @param selectorFn 获取元素的函数
|
|
1465
|
-
* @param timeout 超时时间,默认0
|
|
1466
|
-
* @example
|
|
1467
|
-
* Utils.waitNode(()=>document.querySelector("div"), 1000).then( $div =>{
|
|
1468
|
-
* console.log($div); // $div => HTMLDivELement | null
|
|
1469
|
-
* })
|
|
1470
|
-
*/
|
|
1471
|
-
waitNode<K>(selectorFn: () => K | null | undefined): Promise<K>;
|
|
1472
|
-
waitNode<K>(selectorFn: () => K | null | undefined, timeout: number): Promise<K | null | undefined>;
|
|
1473
|
-
/**
|
|
1474
|
-
* 等待元素出现
|
|
1475
|
-
* @param selector CSS选择器
|
|
1476
|
-
* @param parent (可选)父元素,默认document
|
|
1477
|
-
* @example
|
|
1478
|
-
* Utils.waitNode("div").then( $div =>{
|
|
1479
|
-
* console.log($div); // div => HTMLDivELement
|
|
1480
|
-
* })
|
|
1481
|
-
* Utils.waitNode("div", document).then( $div =>{
|
|
1482
|
-
* console.log($div); // div => HTMLDivELement
|
|
1483
|
-
* })
|
|
1484
|
-
*/
|
|
1485
|
-
waitNode<K extends keyof HTMLElementTagNameMap>(selector: K, parent?: Node | Element | Document | HTMLElement): Promise<HTMLElementTagNameMap[K]>;
|
|
1486
|
-
waitNode<T extends Element>(selector: string, parent?: Node | Element | Document | HTMLElement): Promise<T>;
|
|
1487
|
-
/**
|
|
1488
|
-
* 等待元素出现
|
|
1489
|
-
* @param selectorList CSS选择器数组
|
|
1490
|
-
* @param parent (可选)父元素,默认document
|
|
1491
|
-
* @example
|
|
1492
|
-
* Utils.waitNode(["div"]).then( ([$div]) =>{
|
|
1493
|
-
* console.log($div); // div => HTMLDivELement[]
|
|
1494
|
-
* })
|
|
1495
|
-
* Utils.waitNode(["div"], document).then( ([$div]) =>{
|
|
1496
|
-
* console.log($div); // div => HTMLDivELement[]
|
|
1497
|
-
* })
|
|
1498
|
-
*/
|
|
1499
|
-
waitNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<HTMLElementTagNameMap[K][]>;
|
|
1500
|
-
waitNode<T extends Element[]>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<T>;
|
|
1501
|
-
/**
|
|
1502
|
-
* 等待元素出现
|
|
1503
|
-
* @param selector CSS选择器
|
|
1504
|
-
* @param parent 父元素,默认document
|
|
1505
|
-
* @param timeout 超时时间,默认0
|
|
1506
|
-
* @example
|
|
1507
|
-
* Utils.waitNode("div", document, 1000).then( $div =>{
|
|
1508
|
-
* console.log($div); // $div => HTMLDivELement | null
|
|
1509
|
-
* })
|
|
1510
|
-
*/
|
|
1511
|
-
waitNode<K extends keyof HTMLElementTagNameMap>(selector: K, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
|
|
1512
|
-
waitNode<T extends Element>(selector: string, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
|
|
1513
|
-
/**
|
|
1514
|
-
* 等待元素出现
|
|
1515
|
-
* @param selectorList CSS选择器数组
|
|
1516
|
-
* @param parent 父元素,默认document
|
|
1517
|
-
* @param timeout 超时时间,默认0
|
|
1518
|
-
* @example
|
|
1519
|
-
* Utils.waitNode(["div"], document, 1000).then( ([$div]) =>{
|
|
1520
|
-
* console.log($div); // $div => HTMLDivELement[] | null
|
|
1521
|
-
* })
|
|
1522
|
-
*/
|
|
1523
|
-
waitNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
|
|
1524
|
-
waitNode<T extends Element[]>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
|
|
1525
|
-
/**
|
|
1526
|
-
* 等待元素出现
|
|
1527
|
-
* @param selector CSS选择器
|
|
1528
|
-
* @param timeout 超时时间,默认0
|
|
1529
|
-
* @example
|
|
1530
|
-
* Utils.waitNode("div", 1000).then( $div =>{
|
|
1531
|
-
* console.log($div); // $div => HTMLDivELement | null
|
|
1532
|
-
* })
|
|
1533
|
-
*/
|
|
1534
|
-
waitNode<K extends keyof HTMLElementTagNameMap>(selector: K, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
|
|
1535
|
-
waitNode<T extends Element>(selector: string, timeout: number): Promise<T | null>;
|
|
1536
|
-
/**
|
|
1537
|
-
* 等待元素出现
|
|
1538
|
-
* @param selectorList CSS选择器数组
|
|
1539
|
-
* @param timeout 超时时间,默认0
|
|
1540
|
-
* @example
|
|
1541
|
-
* Utils.waitNode(["div"], 1000).then( [$div] =>{
|
|
1542
|
-
* console.log($div); // $div => HTMLDivELement[] | null
|
|
1543
|
-
* })
|
|
1544
|
-
*/
|
|
1545
|
-
waitNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
|
|
1546
|
-
waitNode<T extends Element[]>(selectorList: string[], timeout: number): Promise<T | null>;
|
|
1547
|
-
/**
|
|
1548
|
-
* 等待任意元素出现
|
|
1549
|
-
* @param selectorList CSS选择器数组
|
|
1550
|
-
* @param parent (可选)监听的父元素
|
|
1551
|
-
* @example
|
|
1552
|
-
* Utils.waitAnyNode(["div","div"]).then( $div =>{
|
|
1553
|
-
* console.log($div); // $div => HTMLDivELement 这里是第一个
|
|
1554
|
-
* })
|
|
1555
|
-
* Utils.waitAnyNode(["a","div"], document).then( $a =>{
|
|
1556
|
-
* console.log($a); // $a => HTMLAnchorElement 这里是第一个
|
|
1557
|
-
* })
|
|
1558
|
-
*/
|
|
1559
|
-
waitAnyNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<HTMLElementTagNameMap[K]>;
|
|
1560
|
-
waitAnyNode<T extends Element>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<T>;
|
|
1561
|
-
/**
|
|
1562
|
-
* 等待任意元素出现
|
|
1563
|
-
* @param selectorList CSS选择器数组
|
|
1564
|
-
* @param parent 父元素,默认document
|
|
1565
|
-
* @param timeout 超时时间,默认0
|
|
1566
|
-
* @example
|
|
1567
|
-
* Utils.waitAnyNode(["div","div"], document, 10000).then( $div =>{
|
|
1568
|
-
* console.log($div); // $div => HTMLDivELement | null
|
|
1569
|
-
* })
|
|
1570
|
-
*/
|
|
1571
|
-
waitAnyNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
|
|
1572
|
-
waitAnyNode<T extends Element>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
|
|
1573
|
-
/**
|
|
1574
|
-
* 等待任意元素出现
|
|
1575
|
-
* @param selectorList CSS选择器数组
|
|
1576
|
-
* @param timeout 超时时间,默认0
|
|
1577
|
-
* @example
|
|
1578
|
-
* Utils.waitAnyNode(["div","div"], 10000).then( $div =>{
|
|
1579
|
-
* console.log($div); // $div => HTMLDivELement | null
|
|
1580
|
-
* })
|
|
1581
|
-
*/
|
|
1582
|
-
waitAnyNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
|
|
1583
|
-
waitAnyNode<T extends Element>(selectorList: string[], timeout: number): Promise<T | null>;
|
|
1584
|
-
/**
|
|
1585
|
-
* 等待元素数组出现
|
|
1586
|
-
* @param selector CSS选择器
|
|
1587
|
-
* @param parent (可选)监听的父元素
|
|
1588
|
-
* @example
|
|
1589
|
-
* Utils.waitNodeList("div").then( $result =>{
|
|
1590
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement>
|
|
1591
|
-
* })
|
|
1592
|
-
* Utils.waitNodeList("div", document).then( $result =>{
|
|
1593
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement>
|
|
1594
|
-
* })
|
|
1595
|
-
*/
|
|
1596
|
-
waitNodeList<T extends keyof HTMLElementTagNameMap>(selector: T, parent?: Node | Element | Document | HTMLElement): Promise<NodeListOf<HTMLElementTagNameMap[T]>>;
|
|
1597
|
-
waitNodeList<T extends NodeListOf<Element>>(selector: string, parent?: Node | Element | Document | HTMLElement): Promise<T>;
|
|
1598
|
-
/**
|
|
1599
|
-
* 等待元素数组出现
|
|
1600
|
-
* @param selectorList CSS选择器数组
|
|
1601
|
-
* @param parent (可选)监听的父元素
|
|
1602
|
-
* @example
|
|
1603
|
-
* Utils.waitNodeList(["div"]).then( $result =>{
|
|
1604
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement>[]
|
|
1605
|
-
* })
|
|
1606
|
-
* Utils.waitNodeList(["div"], document).then( $result =>{
|
|
1607
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement>[]
|
|
1608
|
-
* })
|
|
1609
|
-
*/
|
|
1610
|
-
waitNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<NodeListOf<HTMLElementTagNameMap[K]>[]>;
|
|
1611
|
-
waitNodeList<T extends NodeListOf<Element>[]>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<T>;
|
|
1612
|
-
/**
|
|
1613
|
-
* 等待元素数组出现
|
|
1614
|
-
* @param selector CSS选择器
|
|
1615
|
-
* @param parent 监听的父元素
|
|
1616
|
-
* @param timeout 超时时间,默认0
|
|
1617
|
-
* @example
|
|
1618
|
-
* Utils.waitNodeList("div", document, 10000).then( $result =>{
|
|
1619
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement> | null
|
|
1620
|
-
* })
|
|
1621
|
-
*/
|
|
1622
|
-
waitNodeList<T extends NodeListOf<Element>>(selector: string, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
|
|
1623
|
-
waitNodeList<K extends keyof HTMLElementTagNameMap>(selector: K, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
|
|
1624
|
-
/**
|
|
1625
|
-
* 等待元素数组出现
|
|
1626
|
-
* @param selectorList CSS选择器数组
|
|
1627
|
-
* @param parent 监听的父元素
|
|
1628
|
-
* @param timeout 超时时间,默认0
|
|
1629
|
-
* @example
|
|
1630
|
-
* Utils.waitNodeList(["div"], document, 10000).then( $result =>{
|
|
1631
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement>[] | null
|
|
1632
|
-
* })
|
|
1633
|
-
*/
|
|
1634
|
-
waitNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]>[] | null>;
|
|
1635
|
-
waitNodeList<T extends NodeListOf<Element>[]>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
|
|
1636
|
-
/**
|
|
1637
|
-
* 等待元素数组出现
|
|
1638
|
-
* @param selector CSS选择器数组
|
|
1639
|
-
* @param timeout 超时时间,默认0
|
|
1640
|
-
* @example
|
|
1641
|
-
* Utils.waitNodeList("div", 10000).then( $result =>{
|
|
1642
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement> | null
|
|
1643
|
-
* })
|
|
1644
|
-
*/
|
|
1645
|
-
waitNodeList<K extends keyof HTMLElementTagNameMap>(selector: K[], timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
|
|
1646
|
-
waitNodeList<T extends NodeListOf<Element>>(selector: string[], timeout: number): Promise<T | null>;
|
|
1647
|
-
/**
|
|
1648
|
-
* 等待元素数组出现
|
|
1649
|
-
* @param selectorList CSS选择器数组
|
|
1650
|
-
* @param timeout 超时时间,默认0
|
|
1651
|
-
* @example
|
|
1652
|
-
* Utils.waitNodeList(["div"], 10000).then( $result =>{
|
|
1653
|
-
* console.log($result); // $result => NodeListOf<HTMLDivElement>[] | null
|
|
1654
|
-
* })
|
|
1655
|
-
*/
|
|
1656
|
-
waitNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]>[] | null>;
|
|
1657
|
-
waitNodeList<T extends NodeListOf<Element>>(selectorList: string[], timeout: number): Promise<T[] | null>;
|
|
1658
|
-
/**
|
|
1659
|
-
* 等待任意元素数组出现
|
|
1660
|
-
* @param selectorList CSS选择器数组
|
|
1661
|
-
* @param parent (可选)监听的父元素
|
|
1328
|
+
* 使用`Object.defineProperty`等待对象上的属性出现
|
|
1329
|
+
* @param target 检查的对象
|
|
1330
|
+
* @param propertyName 检查的对象的属性名
|
|
1662
1331
|
* @example
|
|
1663
|
-
* Utils.
|
|
1664
|
-
*
|
|
1665
|
-
*
|
|
1666
|
-
*
|
|
1667
|
-
*
|
|
1668
|
-
*
|
|
1332
|
+
* await Utils.waitProperty(window,"test");
|
|
1333
|
+
* console.log("test success set");
|
|
1334
|
+
*
|
|
1335
|
+
* window.test = 1;
|
|
1336
|
+
* > "test success set"
|
|
1337
|
+
*
|
|
1669
1338
|
*/
|
|
1670
|
-
|
|
1671
|
-
|
|
1339
|
+
waitProperty<T>(target: any, propertyName: string): Promise<T>;
|
|
1340
|
+
waitProperty<T>(checkFn: () => any, propertyName: string): Promise<T>;
|
|
1672
1341
|
/**
|
|
1673
|
-
*
|
|
1674
|
-
* @param
|
|
1675
|
-
* @param
|
|
1676
|
-
* @param
|
|
1342
|
+
* 在规定时间内等待对象上的属性出现
|
|
1343
|
+
* @param target 检查的对象
|
|
1344
|
+
* @param propertyName 检查的对象的属性名
|
|
1345
|
+
* @param intervalTimer (可选)检查间隔时间(ms),默认250ms
|
|
1346
|
+
* @param maxTime (可选)限制在多长时间内,默认-1(不限制时间)
|
|
1677
1347
|
* @example
|
|
1678
|
-
* Utils.
|
|
1679
|
-
*
|
|
1680
|
-
* })
|
|
1348
|
+
* await Utils.waitPropertyByInterval(window,"test");
|
|
1349
|
+
* console.log("test success set");
|
|
1681
1350
|
*/
|
|
1682
|
-
|
|
1683
|
-
waitAnyNodeList<T extends Element>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<T> | null>;
|
|
1351
|
+
waitPropertyByInterval<T>(target: any, propertyName: string, intervalTimer?: number, maxTime?: number): Promise<T>;
|
|
1684
1352
|
/**
|
|
1685
|
-
*
|
|
1686
|
-
* @param
|
|
1687
|
-
* @param
|
|
1353
|
+
* 在规定时间内等待对象上的属性出现
|
|
1354
|
+
* @param target 检查的对象
|
|
1355
|
+
* @param checkFn 检查属性是否在对象上
|
|
1356
|
+
* @param intervalTimer (可选)检查间隔时间(ms),默认250ms
|
|
1357
|
+
* @param maxTime (可选)限制在多长时间内,默认-1(不限制时间)
|
|
1688
1358
|
* @example
|
|
1689
|
-
* Utils.
|
|
1690
|
-
*
|
|
1691
|
-
* })
|
|
1359
|
+
* await Utils.waitPropertyByInterval(window,() => "test" in window);
|
|
1360
|
+
* console.log("test success set");
|
|
1692
1361
|
*/
|
|
1693
|
-
|
|
1694
|
-
waitAnyNodeList<T extends Element>(selectorList: string[], timeout: number): Promise<NodeListOf<T> | null>;
|
|
1362
|
+
waitPropertyByInterval<T>(target: any, checkFn: (inst: any) => boolean, intervalTimer?: number, maxTime?: number): Promise<T>;
|
|
1695
1363
|
/**
|
|
1696
|
-
*
|
|
1697
|
-
* @param
|
|
1698
|
-
* @param
|
|
1364
|
+
* 在规定时间内等待对象上的属性出现
|
|
1365
|
+
* @param queryTarget 获取对象的函数
|
|
1366
|
+
* @param propertyName 检查的对象的属性名
|
|
1367
|
+
* @param intervalTimer (可选)检查间隔时间(ms),默认250ms
|
|
1368
|
+
* @param maxTime (可选)限制在多长时间内,默认-1(不限制时间)
|
|
1699
1369
|
* @example
|
|
1700
|
-
* await Utils.
|
|
1370
|
+
* await Utils.waitPropertyByInterval(() => window,"test");
|
|
1701
1371
|
* console.log("test success set");
|
|
1702
|
-
*
|
|
1703
|
-
* window.test = 1;
|
|
1704
|
-
* > "test success set"
|
|
1705
|
-
*
|
|
1706
1372
|
*/
|
|
1707
|
-
|
|
1373
|
+
waitPropertyByInterval<T>(queryTarget: () => any, propertyName: string, intervalTimer?: number, maxTime?: number): Promise<T>;
|
|
1708
1374
|
/**
|
|
1709
1375
|
* 在规定时间内等待对象上的属性出现
|
|
1710
|
-
* @param
|
|
1711
|
-
* @param
|
|
1376
|
+
* @param queryTarget 获取对象的函数
|
|
1377
|
+
* @param checkFn 检查属性是否在对象上
|
|
1712
1378
|
* @param intervalTimer (可选)检查间隔时间(ms),默认250ms
|
|
1713
1379
|
* @param maxTime (可选)限制在多长时间内,默认-1(不限制时间)
|
|
1714
1380
|
* @example
|
|
1715
|
-
* await Utils.waitPropertyByInterval(window,"test");
|
|
1381
|
+
* await Utils.waitPropertyByInterval(() => window,() => "test" in window);
|
|
1716
1382
|
* console.log("test success set");
|
|
1717
1383
|
*/
|
|
1718
|
-
waitPropertyByInterval<T>(
|
|
1384
|
+
waitPropertyByInterval<T>(queryTarget: () => any, checkFn: (inst: any) => boolean, intervalTimer?: number, maxTime?: number): Promise<T>;
|
|
1719
1385
|
/**
|
|
1720
1386
|
* 在规定时间内等待元素上的__vue__属性或者__vue__属性上的某个值出现出现
|
|
1721
1387
|
* @param element 目标元素
|
|
@@ -1728,8 +1394,8 @@ declare class Utils {
|
|
|
1728
1394
|
* function(){
|
|
1729
1395
|
* return document.querySelector("a.xx")
|
|
1730
1396
|
* },
|
|
1731
|
-
* function(
|
|
1732
|
-
* return Boolean(
|
|
1397
|
+
* function(vueInst){
|
|
1398
|
+
* return Boolean(vueInst.xxx == null);
|
|
1733
1399
|
* },
|
|
1734
1400
|
* 250,
|
|
1735
1401
|
* 10000,
|
|
@@ -1738,7 +1404,7 @@ declare class Utils {
|
|
|
1738
1404
|
*/
|
|
1739
1405
|
waitVueByInterval(element: HTMLElement | (() => any), propertyName: string | ((__vue__: any) => boolean), timer?: number, maxTime?: number, vueName?: "__vue__" | string): Promise<boolean>;
|
|
1740
1406
|
/**
|
|
1741
|
-
*
|
|
1407
|
+
* 使用`Object.defineProperty`观察对象的set、get
|
|
1742
1408
|
* @param target 观察的对象
|
|
1743
1409
|
* @param propertyName 观察的对象的属性名
|
|
1744
1410
|
* @param getCallBack (可选)触发get的回调,可以自定义返回特定值
|
|
@@ -1874,18 +1540,36 @@ declare class Utils {
|
|
|
1874
1540
|
*/
|
|
1875
1541
|
workerClearInterval(timeId: number | undefined): void;
|
|
1876
1542
|
/**
|
|
1877
|
-
*
|
|
1543
|
+
* 构造一个函数(可为异步函数)
|
|
1544
|
+
*
|
|
1545
|
+
* 前面的是入参,后面的是代码字符串
|
|
1546
|
+
*
|
|
1547
|
+
* 如果无入参,那么直接是代码字符串
|
|
1548
|
+
*
|
|
1549
|
+
* 注意:至少传入一个参数
|
|
1550
|
+
* @param args
|
|
1551
|
+
* @example
|
|
1552
|
+
* const fn = utils.createFunction("console.log(123)");
|
|
1553
|
+
* > 123
|
|
1554
|
+
* @example
|
|
1555
|
+
* const fn = await utils.createFunction("console.log(123)", true);
|
|
1556
|
+
* > 123
|
|
1557
|
+
* @example
|
|
1558
|
+
* const asyncFn = await utils.createFunction("a", "return a", true);
|
|
1559
|
+
* asyncFn(111);
|
|
1560
|
+
* > 111
|
|
1561
|
+
* @example
|
|
1562
|
+
* const asyncFn = await utils.createFunction("a", "b", "return a + b", true);
|
|
1563
|
+
* asyncFn(1,2);
|
|
1564
|
+
* > 3
|
|
1565
|
+
* @example
|
|
1566
|
+
* const fn = utils.createFunction("a", "b", "return a + b", false);
|
|
1567
|
+
* fn(4,5);
|
|
1568
|
+
* > 9
|
|
1878
1569
|
*/
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
*/
|
|
1883
|
-
error: Error | null;
|
|
1884
|
-
/**
|
|
1885
|
-
* 剪贴板内容
|
|
1886
|
-
*/
|
|
1887
|
-
content: string;
|
|
1888
|
-
}>;
|
|
1570
|
+
createFunction(code: string): (...args: any[]) => any;
|
|
1571
|
+
createFunction(param: string, code: string): (...args: any[]) => any;
|
|
1572
|
+
createFunction<A extends string[], T extends boolean>(...params: [...A, code: string, isAsync: T]): T extends true ? (...params: any[]) => Promise<any> : (...args: any[]) => any;
|
|
1889
1573
|
}
|
|
1890
1574
|
declare const utils: Utils;
|
|
1891
1575
|
export { utils as Utils };
|