@ajaxjs/util 1.1.1 → 1.1.3
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 +55 -6
- package/dist/index.esm.js +525 -0
- package/dist/index.umd.js +536 -0
- package/dist/{util → src/core}/cookies.d.ts +18 -18
- package/dist/{util → src/core}/dom.d.ts +17 -17
- package/dist/{util → src/core}/utils.d.ts +51 -51
- package/dist/{util → src/core}/xhr-config.d.ts +22 -22
- package/dist/{util → src/core}/xhr.d.ts +71 -71
- package/dist/src/index.d.ts +5 -0
- package/package.json +41 -43
- package/LICENSE +0 -201
- package/dist/index.d.ts +0 -38
- package/dist/index.js +0 -71
- package/dist/index.js.map +0 -1
- package/dist/main.d.ts +0 -1
- package/dist/main.js +0 -16
- package/dist/main.js.map +0 -1
- package/dist/router/index.d.ts +0 -3
- package/dist/router/index.js +0 -44
- package/dist/router/index.js.map +0 -1
- package/dist/router.d.ts +0 -3
- package/dist/router.js +0 -44
- package/dist/router.js.map +0 -1
- package/dist/shims-vue.d.ts +0 -4
- package/dist/style/common-functions.less +0 -294
- package/dist/style/reset.less +0 -19
- package/dist/util/cookies.js +0 -46
- package/dist/util/cookies.js.map +0 -1
- package/dist/util/dom.js +0 -44
- package/dist/util/dom.js.map +0 -1
- package/dist/util/utils.js +0 -174
- package/dist/util/utils.js.map +0 -1
- package/dist/util/xhr-config.js +0 -3
- package/dist/util/xhr-config.js.map +0 -1
- package/dist/util/xhr.js +0 -262
- package/dist/util/xhr.js.map +0 -1
- package/dist/widget/AccordionMenu.vue +0 -140
- package/dist/widget/AdjustFontSize.vue +0 -65
- package/dist/widget/Article.vue +0 -59
- package/dist/widget/EmptyContent.d.ts +0 -5
- package/dist/widget/EmptyContent.js +0 -7
- package/dist/widget/EmptyContent.js.map +0 -1
- package/dist/widget/Expander.vue +0 -65
- package/dist/widget/FileUploader/FileUploader.d.ts +0 -70
- package/dist/widget/FileUploader/FileUploader.js +0 -139
- package/dist/widget/FileUploader/FileUploader.js.map +0 -1
- package/dist/widget/FileUploader/FileUploader.less +0 -68
- package/dist/widget/FileUploader/FileUploader.ts +0 -156
- package/dist/widget/FileUploader/FileUploader.vue +0 -43
- package/dist/widget/HtmlEditor/HtmlEditor.d.ts +0 -70
- package/dist/widget/HtmlEditor/HtmlEditor.js +0 -287
- package/dist/widget/HtmlEditor/HtmlEditor.js.map +0 -1
- package/dist/widget/HtmlEditor/HtmlEditor.less +0 -345
- package/dist/widget/HtmlEditor/HtmlEditor.ts +0 -339
- package/dist/widget/HtmlEditor/HtmlEditor.vue +0 -70
- package/dist/widget/HtmlEditor/html-editor-HtmlSanitizer.js +0 -103
- package/dist/widget/ImageEnlarger.vue +0 -105
- package/dist/widget/OpacityBanner.vue +0 -125
- package/dist/widget/ProcessLine.vue +0 -133
- package/dist/widget/Resize.d.ts +0 -51
- package/dist/widget/Resize.js +0 -133
- package/dist/widget/Resize.js.map +0 -1
- package/dist/widget/Resize.ts +0 -152
- package/dist/widget/Resize.vue +0 -104
- package/dist/widget/TreeSelector.vue +0 -4
- package/dist/widget/calendar/BetweenDate.vue +0 -63
- package/dist/widget/calendar/Calendar.d.ts +0 -55
- package/dist/widget/calendar/Calendar.js +0 -145
- package/dist/widget/calendar/Calendar.js.map +0 -1
- package/dist/widget/calendar/Calendar.less +0 -210
- package/dist/widget/calendar/Calendar.ts +0 -167
- package/dist/widget/calendar/Calendar.vue +0 -52
- package/dist/widget/calendar/CalendarInput.vue +0 -71
- package/dist/widget/form/validator.d.ts +0 -70
- package/dist/widget/form/validator.js +0 -220
- package/dist/widget/form/validator.js.map +0 -1
- package/dist/widget/form/validator.ts +0 -289
- package/dist/widget/play-ground/sku.vue +0 -93
package/dist/util/utils.js
DELETED
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* 通用工具类
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.copyToClipboard = exports.throttle = exports.parallel = exports.dateFormat2 = exports.dateFormat = exports.isDev = exports.isDebug = void 0;
|
|
7
|
-
const env = process.env.NODE_ENV;
|
|
8
|
-
/**
|
|
9
|
-
* 是否调试模式中
|
|
10
|
-
*
|
|
11
|
-
* 打包成组件之后不能用
|
|
12
|
-
*
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
function isDebug() {
|
|
16
|
-
return env === 'development';
|
|
17
|
-
}
|
|
18
|
-
exports.isDebug = isDebug;
|
|
19
|
-
function isDev() {
|
|
20
|
-
let currentHostname = window.location.hostname;
|
|
21
|
-
// 判断主机名是否是内网地址
|
|
22
|
-
return (currentHostname.startsWith('192.168.') || currentHostname.startsWith('10.') || currentHostname === 'localhost');
|
|
23
|
-
}
|
|
24
|
-
exports.isDev = isDev;
|
|
25
|
-
/**
|
|
26
|
-
* 日期格式化。详见博客文章:http://blog.csdn.net/zhangxin09/archive/2011/01/01/6111294.aspx
|
|
27
|
-
* e.g: new Date().format("yyyy-MM-dd hh:mm:ss")
|
|
28
|
-
*
|
|
29
|
-
* @param {String} format
|
|
30
|
-
* @return {String}
|
|
31
|
-
*/
|
|
32
|
-
function dateFormat(format) {
|
|
33
|
-
let $1, o = {
|
|
34
|
-
"M+": this.getMonth() + 1,
|
|
35
|
-
"d+": this.getDate(),
|
|
36
|
-
"h+": this.getHours(),
|
|
37
|
-
"m+": this.getMinutes(),
|
|
38
|
-
"s+": this.getSeconds(),
|
|
39
|
-
// 季度 quarter
|
|
40
|
-
"q+": Math.floor((this.getMonth() + 3) / 3),
|
|
41
|
-
"S": this.getMilliseconds() // 千秒
|
|
42
|
-
};
|
|
43
|
-
if (/(y+)/.test(format)) {
|
|
44
|
-
$1 = RegExp.$1, format = format.replace($1, String(this.getFullYear()).substr(4 - $1));
|
|
45
|
-
}
|
|
46
|
-
let key, value;
|
|
47
|
-
for (key in o) { // 如果没有指定该参数,则子字符串将延续到 stringvar 的最后。
|
|
48
|
-
if (new RegExp("(" + key + ")").test(format)) {
|
|
49
|
-
$1 = RegExp.$1,
|
|
50
|
-
value = String(o[key]),
|
|
51
|
-
value = $1.length == 1 ? value : ("00" + value).substr(value.length),
|
|
52
|
-
format = format.replace($1, value);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
return format;
|
|
56
|
-
}
|
|
57
|
-
exports.dateFormat = dateFormat;
|
|
58
|
-
/**
|
|
59
|
-
* 日期格式化
|
|
60
|
-
* @author meizz
|
|
61
|
-
* @param date 日期,必须为 Date 类型
|
|
62
|
-
* @param fmt 格式模板
|
|
63
|
-
* @returns 格式化后的字符串
|
|
64
|
-
*/
|
|
65
|
-
function dateFormat2(date, fmt) {
|
|
66
|
-
let o = {
|
|
67
|
-
"M+": date.getMonth() + 1,
|
|
68
|
-
"d+": date.getDate(),
|
|
69
|
-
"h+": date.getHours(),
|
|
70
|
-
"m+": date.getMinutes(),
|
|
71
|
-
"s+": date.getSeconds(),
|
|
72
|
-
"q+": Math.floor((date.getMonth() + 3) / 3),
|
|
73
|
-
"S": date.getMilliseconds() // 毫秒
|
|
74
|
-
};
|
|
75
|
-
if (/(y+)/.test(fmt))
|
|
76
|
-
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
|
|
77
|
-
for (var k in o)
|
|
78
|
-
if (new RegExp("(" + k + ")").test(fmt)) {
|
|
79
|
-
let obj = (RegExp.$1.length == 1) ? o[k] : ("00" + o[k]).substr(("" + o[k]).length);
|
|
80
|
-
// @ts-ignore
|
|
81
|
-
fmt = fmt.replace(RegExp.$1, obj);
|
|
82
|
-
}
|
|
83
|
-
return fmt;
|
|
84
|
-
}
|
|
85
|
-
exports.dateFormat2 = dateFormat2;
|
|
86
|
-
/**
|
|
87
|
-
* 并行和串行任务
|
|
88
|
-
*
|
|
89
|
-
* @author https://segmentfault.com/a/1190000013265925
|
|
90
|
-
* @param arr
|
|
91
|
-
* @param finnaly
|
|
92
|
-
*/
|
|
93
|
-
function parallel(arr, _finally) {
|
|
94
|
-
let fn, index = 0;
|
|
95
|
-
// @ts-ignore
|
|
96
|
-
let statusArr = Array(arr.length).fill().map(() => ({ isActive: false, data: null }));
|
|
97
|
-
let isFinished = function () {
|
|
98
|
-
return statusArr.every((item) => item.isActive === true);
|
|
99
|
-
};
|
|
100
|
-
let resolve = function (index) {
|
|
101
|
-
return function (data) {
|
|
102
|
-
statusArr[index].data = data;
|
|
103
|
-
statusArr[index].isActive = true;
|
|
104
|
-
let isFinish = isFinished();
|
|
105
|
-
if (isFinish) {
|
|
106
|
-
let datas = statusArr.map((item) => item.data);
|
|
107
|
-
_finally(datas);
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
};
|
|
111
|
-
// @ts-ignore
|
|
112
|
-
while ((fn = arr.shift())) {
|
|
113
|
-
fn(resolve(index)); // 给 resolve 函数追加参数,可以使用 bind 函数实现,这里使用了柯里化
|
|
114
|
-
index++;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.parallel = parallel;
|
|
118
|
-
/**
|
|
119
|
-
* 函数节流
|
|
120
|
-
*
|
|
121
|
-
* @author https://www.cnblogs.com/moqiutao/p/6875955.html
|
|
122
|
-
* @param fn
|
|
123
|
-
* @param delay
|
|
124
|
-
* @param mustRunDelay
|
|
125
|
-
*/
|
|
126
|
-
function throttle(fn, delay, mustRunDelay) {
|
|
127
|
-
var timer, t_start;
|
|
128
|
-
return function () {
|
|
129
|
-
var t_curr = +new Date();
|
|
130
|
-
window.clearTimeout(timer);
|
|
131
|
-
if (!t_start)
|
|
132
|
-
t_start = t_curr;
|
|
133
|
-
if (t_curr - t_start >= mustRunDelay) {
|
|
134
|
-
// @ts-ignore
|
|
135
|
-
fn.apply(this, arguments);
|
|
136
|
-
t_start = t_curr;
|
|
137
|
-
}
|
|
138
|
-
else {
|
|
139
|
-
var args = arguments;
|
|
140
|
-
// @ts-ignore
|
|
141
|
-
timer = window.setTimeout(() => fn.apply(this, args), delay);
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
exports.throttle = throttle;
|
|
146
|
-
/**
|
|
147
|
-
* 复制文字到剪切板
|
|
148
|
-
*
|
|
149
|
-
* @param {*} text
|
|
150
|
-
*/
|
|
151
|
-
function copyToClipboard(text) {
|
|
152
|
-
if (navigator.clipboard) {
|
|
153
|
-
// clipboard api 复制
|
|
154
|
-
navigator.clipboard.writeText(text);
|
|
155
|
-
}
|
|
156
|
-
else {
|
|
157
|
-
let textarea = document.createElement('textarea');
|
|
158
|
-
document.body.appendChild(textarea);
|
|
159
|
-
// 隐藏此输入框
|
|
160
|
-
textarea.style.position = 'fixed';
|
|
161
|
-
textarea.style.clip = 'rect(0 0 0 0)';
|
|
162
|
-
textarea.style.top = '10px';
|
|
163
|
-
// 赋值
|
|
164
|
-
textarea.value = text;
|
|
165
|
-
// 选中
|
|
166
|
-
textarea.select();
|
|
167
|
-
// 复制
|
|
168
|
-
document.execCommand('copy', true);
|
|
169
|
-
// 移除输入框
|
|
170
|
-
document.body.removeChild(textarea);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
exports.copyToClipboard = copyToClipboard;
|
|
174
|
-
//# sourceMappingURL=utils.js.map
|
package/dist/util/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/util/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/util/xhr-config.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xhr-config.js","sourceRoot":"","sources":["../../src/util/xhr-config.ts"],"names":[],"mappings":""}
|
package/dist/util/xhr.js
DELETED
|
@@ -1,262 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPageList = exports.getQuery = exports.toParams = exports.xhr_put = exports.xhr_post = exports.xhr_del = exports.xhr_get = exports.xhr_post_upload = exports.setBaseHeadParams = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* 默认的请求配置
|
|
6
|
-
*/
|
|
7
|
-
const DEFAULT_XHR_CFG = {
|
|
8
|
-
timeout: 5000,
|
|
9
|
-
withCredentials: false,
|
|
10
|
-
parseContentType: 'json'
|
|
11
|
-
};
|
|
12
|
-
/**
|
|
13
|
-
* 全局请求的 head 参数
|
|
14
|
-
*/
|
|
15
|
-
let BASE_HEAD_PARAMS = null;
|
|
16
|
-
/**
|
|
17
|
-
* 设置全局请求的 head 参数
|
|
18
|
-
*
|
|
19
|
-
* @param param
|
|
20
|
-
*/
|
|
21
|
-
function setBaseHeadParams(params) {
|
|
22
|
-
if (BASE_HEAD_PARAMS === null)
|
|
23
|
-
BASE_HEAD_PARAMS = {};
|
|
24
|
-
Object.assign(BASE_HEAD_PARAMS, params);
|
|
25
|
-
}
|
|
26
|
-
exports.setBaseHeadParams = setBaseHeadParams;
|
|
27
|
-
/**
|
|
28
|
-
*
|
|
29
|
-
* @param getOrDel
|
|
30
|
-
* @param url
|
|
31
|
-
* @param cb
|
|
32
|
-
* @param params
|
|
33
|
-
* @param cfg
|
|
34
|
-
*/
|
|
35
|
-
function getOrDel(getOrDel, url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
36
|
-
let xhr = initXhr(cfg);
|
|
37
|
-
if (params != null) {
|
|
38
|
-
if (url.indexOf('?') != -1)
|
|
39
|
-
url += '&' + toParams(params);
|
|
40
|
-
else
|
|
41
|
-
url += '?' + toParams(params);
|
|
42
|
-
}
|
|
43
|
-
xhr.open(getOrDel.toUpperCase(), url, true);
|
|
44
|
-
xhr.onreadystatechange = function () {
|
|
45
|
-
responseHandle(this, cb, cfg);
|
|
46
|
-
};
|
|
47
|
-
if (BASE_HEAD_PARAMS) // 设置自定义请求头
|
|
48
|
-
for (let key in BASE_HEAD_PARAMS)
|
|
49
|
-
xhr.setRequestHeader(key, BASE_HEAD_PARAMS[key]);
|
|
50
|
-
xhr.send();
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
*
|
|
54
|
-
* @param method
|
|
55
|
-
* @param url
|
|
56
|
-
* @param cb
|
|
57
|
-
* @param params
|
|
58
|
-
* @param cfg
|
|
59
|
-
*/
|
|
60
|
-
function postOrPut(method, url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
61
|
-
let xhr = initXhr(cfg);
|
|
62
|
-
xhr.open(method, url, true);
|
|
63
|
-
xhr.onreadystatechange = function () {
|
|
64
|
-
responseHandle(this, cb, cfg);
|
|
65
|
-
};
|
|
66
|
-
if (BASE_HEAD_PARAMS) // 设置自定义请求头
|
|
67
|
-
for (let key in BASE_HEAD_PARAMS)
|
|
68
|
-
xhr.setRequestHeader(key, BASE_HEAD_PARAMS[key]);
|
|
69
|
-
// 此方法必须在 open() 方法和 send() 之间调用
|
|
70
|
-
if (!cfg.contentType) // 如未设置,默认为表单请求
|
|
71
|
-
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
|
|
72
|
-
else
|
|
73
|
-
xhr.setRequestHeader("Content-Type", cfg.contentType);
|
|
74
|
-
let _params = typeof params != 'string' ? toParams(params) : params;
|
|
75
|
-
if (_params)
|
|
76
|
-
xhr.send(_params);
|
|
77
|
-
else
|
|
78
|
-
xhr.send();
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
*
|
|
82
|
-
* @param url
|
|
83
|
-
* @param cb
|
|
84
|
-
* @param params
|
|
85
|
-
* @param cfg
|
|
86
|
-
*/
|
|
87
|
-
function xhr_post_upload(url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
88
|
-
let xhr = initXhr(cfg);
|
|
89
|
-
xhr.open('post', url, true);
|
|
90
|
-
xhr.onreadystatechange = function () {
|
|
91
|
-
responseHandle(this, cb, cfg);
|
|
92
|
-
};
|
|
93
|
-
if (BASE_HEAD_PARAMS) // 设置自定义请求头
|
|
94
|
-
for (let key in BASE_HEAD_PARAMS)
|
|
95
|
-
xhr.setRequestHeader(key, BASE_HEAD_PARAMS[key]);
|
|
96
|
-
// 什么 Content-Type 都不设置
|
|
97
|
-
xhr.send(params);
|
|
98
|
-
}
|
|
99
|
-
exports.xhr_post_upload = xhr_post_upload;
|
|
100
|
-
/**
|
|
101
|
-
* XHR GET 请求
|
|
102
|
-
*
|
|
103
|
-
* @param url 请求地址
|
|
104
|
-
* @param cb 回调函数 @example (json: {}, text: string) => void;
|
|
105
|
-
* @param params 参数,必填,如无填空字符串 "";参数类型是json;参数值会进行 URL 编码,最后附加到 QueryString 中
|
|
106
|
-
* @param cfg 配置,可选的
|
|
107
|
-
*/
|
|
108
|
-
function xhr_get(url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
109
|
-
getOrDel('get', url, cb, params, cfg);
|
|
110
|
-
}
|
|
111
|
-
exports.xhr_get = xhr_get;
|
|
112
|
-
/**
|
|
113
|
-
* XHR DELETE 请求
|
|
114
|
-
*
|
|
115
|
-
* @param url 请求地址
|
|
116
|
-
* @param cb 回调函数 @example (json: {}, text: string) => void;
|
|
117
|
-
* @param params 参数,必填,如无填空字符串 "";参数类型是json;参数值会进行 URL 编码,最后附加到 QueryString 中
|
|
118
|
-
* @param cfg 配置,可选的
|
|
119
|
-
*/
|
|
120
|
-
function xhr_del(url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
121
|
-
getOrDel('delete', url, cb, params, cfg);
|
|
122
|
-
}
|
|
123
|
-
exports.xhr_del = xhr_del;
|
|
124
|
-
/**
|
|
125
|
-
* XHR POST 请求
|
|
126
|
-
*
|
|
127
|
-
* @param url 请求地址
|
|
128
|
-
* @param cb 回调函数 @example (json: {}, text: string) => void;
|
|
129
|
-
* @param params 参数,必填,如无填空字符串 "";参数类型可以是字符串或 json;参数值会进行 URL 编码
|
|
130
|
-
* @param cfg 配置,可选的
|
|
131
|
-
*/
|
|
132
|
-
function xhr_post(url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
133
|
-
postOrPut('post', url, cb, params, cfg);
|
|
134
|
-
}
|
|
135
|
-
exports.xhr_post = xhr_post;
|
|
136
|
-
/**
|
|
137
|
-
* XHR PUT 请求
|
|
138
|
-
*
|
|
139
|
-
* @param url 请求地址
|
|
140
|
-
* @param cb 回调函数 @example (json: {}, text: string) => void;
|
|
141
|
-
* @param params 参数,必填,如无填空字符串 "";参数类型可以是字符串或 json;参数值会进行 URL 编码
|
|
142
|
-
* @param cfg 配置,可选的
|
|
143
|
-
*/
|
|
144
|
-
function xhr_put(url, cb, params, cfg = DEFAULT_XHR_CFG) {
|
|
145
|
-
postOrPut('put', url, cb, params, cfg);
|
|
146
|
-
}
|
|
147
|
-
exports.xhr_put = xhr_put;
|
|
148
|
-
/**
|
|
149
|
-
* 初始化 XHR
|
|
150
|
-
*
|
|
151
|
-
* @param cfg
|
|
152
|
-
* @returns
|
|
153
|
-
*/
|
|
154
|
-
function initXhr(cfg) {
|
|
155
|
-
let xhr = new XMLHttpRequest();
|
|
156
|
-
if (cfg && cfg.timeout) {
|
|
157
|
-
xhr.timeout = cfg.timeout;
|
|
158
|
-
xhr.ontimeout = (e) => console.error('系统异常,XHR 连接服务超时');
|
|
159
|
-
}
|
|
160
|
-
if (cfg && cfg.withCredentials)
|
|
161
|
-
xhr.withCredentials = true;
|
|
162
|
-
return xhr;
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* 错误处理
|
|
166
|
-
*
|
|
167
|
-
* @param xhr
|
|
168
|
-
*/
|
|
169
|
-
function errHandle(xhr) {
|
|
170
|
-
let msg;
|
|
171
|
-
if (xhr.status <= 400)
|
|
172
|
-
msg = '请求参数错误或者权限不足。';
|
|
173
|
-
else if (xhr.status <= 500)
|
|
174
|
-
msg = '服务端异常。';
|
|
175
|
-
else
|
|
176
|
-
msg = `未知异常,HTTP code:${xhr.status}。`;
|
|
177
|
-
if (!xhr.responseText)
|
|
178
|
-
msg += " 服务端返回空的字符串!";
|
|
179
|
-
console.error(msg, xhr.responseText);
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* 响应处理
|
|
183
|
-
*
|
|
184
|
-
* @param xhr
|
|
185
|
-
* @param cb
|
|
186
|
-
* @param cfg
|
|
187
|
-
*/
|
|
188
|
-
function responseHandle(xhr, cb, cfg) {
|
|
189
|
-
if (xhr.readyState == 4) {
|
|
190
|
-
if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
|
|
191
|
-
let text = xhr.responseText;
|
|
192
|
-
let json;
|
|
193
|
-
if (!text)
|
|
194
|
-
console.warn('服务端没有返回任何字符串');
|
|
195
|
-
switch (cfg.parseContentType) {
|
|
196
|
-
case 'text':
|
|
197
|
-
break;
|
|
198
|
-
case 'xml':
|
|
199
|
-
json = xhr.responseXML;
|
|
200
|
-
break;
|
|
201
|
-
case 'json':
|
|
202
|
-
default:
|
|
203
|
-
try {
|
|
204
|
-
json = JSON.parse(text);
|
|
205
|
-
}
|
|
206
|
-
catch (e) {
|
|
207
|
-
console.error('解析 JSON 时候发生错误,非法 JSON');
|
|
208
|
-
console.warn(e);
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
cb && cb(json, text);
|
|
212
|
-
}
|
|
213
|
-
else
|
|
214
|
-
errHandle(xhr);
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* 对象转换为 URL 参数列表,用 & 分隔
|
|
219
|
-
*
|
|
220
|
-
* @param {Object} param JSON 对象
|
|
221
|
-
* @returns URL 参数列表
|
|
222
|
-
*/
|
|
223
|
-
function toParams(param) {
|
|
224
|
-
let result = "";
|
|
225
|
-
for (let name in param) {
|
|
226
|
-
if (typeof param[name] != "function")
|
|
227
|
-
result += "&" + name + "=" + encodeURIComponent(param[name]);
|
|
228
|
-
}
|
|
229
|
-
return result.substring(1);
|
|
230
|
-
}
|
|
231
|
-
exports.toParams = toParams;
|
|
232
|
-
/**
|
|
233
|
-
* 获取 QueryString 的某个参数
|
|
234
|
-
*
|
|
235
|
-
* @param val
|
|
236
|
-
* @returns
|
|
237
|
-
*/
|
|
238
|
-
function getQuery(val) {
|
|
239
|
-
const w = location.hash.indexOf('?');
|
|
240
|
-
const query = location.hash.substring(w + 1);
|
|
241
|
-
let vars = query.split('&');
|
|
242
|
-
for (let i = 0; i < vars.length; i++) {
|
|
243
|
-
const pair = vars[i].split('=');
|
|
244
|
-
if (pair[0] == val)
|
|
245
|
-
return pair[1];
|
|
246
|
-
}
|
|
247
|
-
return '';
|
|
248
|
-
}
|
|
249
|
-
exports.getQuery = getQuery;
|
|
250
|
-
function getPageList(self, listArray, callback) {
|
|
251
|
-
return (j) => {
|
|
252
|
-
if (j.status) {
|
|
253
|
-
listArray.total = j.total;
|
|
254
|
-
listArray.data = j.data;
|
|
255
|
-
callback && callback();
|
|
256
|
-
}
|
|
257
|
-
else
|
|
258
|
-
self.$Message.warning(j.message || '获取数据失败');
|
|
259
|
-
};
|
|
260
|
-
}
|
|
261
|
-
exports.getPageList = getPageList;
|
|
262
|
-
//# sourceMappingURL=xhr.js.map
|
package/dist/util/xhr.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xhr.js","sourceRoot":"","sources":["../../src/util/xhr.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<ul class="aj-accordion-menu" @click="onClk">
|
|
3
|
-
<slot></slot>
|
|
4
|
-
</ul>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script lang="ts">
|
|
8
|
-
/**
|
|
9
|
-
* 内部子菜单的高亮
|
|
10
|
-
*
|
|
11
|
-
* @param ev
|
|
12
|
-
*/
|
|
13
|
-
function highlightSubItem(ev: Event) {
|
|
14
|
-
let li: Element,
|
|
15
|
-
el: Element = ev.target as Element;
|
|
16
|
-
|
|
17
|
-
if (el.tagName == "A" && el.getAttribute("target")) {
|
|
18
|
-
li = el.parentNode as Element;
|
|
19
|
-
li.querySelectorAll("li").forEach((_el: Element) => {
|
|
20
|
-
if (_el == li) _el.classList.add("selected");
|
|
21
|
-
else _el.classList.remove("selected");
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export default {
|
|
27
|
-
methods: {
|
|
28
|
-
onClk(ev: Event): void {
|
|
29
|
-
let children: HTMLCollection = this.$el.children;
|
|
30
|
-
highlightSubItem(ev);
|
|
31
|
-
let _btn: Element = ev.target as Element;
|
|
32
|
-
|
|
33
|
-
if (
|
|
34
|
-
_btn &&
|
|
35
|
-
_btn.tagName == "H3" &&
|
|
36
|
-
(_btn.parentNode as Element).tagName == "LI"
|
|
37
|
-
) {
|
|
38
|
-
_btn = _btn.parentNode as Element;
|
|
39
|
-
|
|
40
|
-
for (let btn: Element, i: number = 0, j = children.length; i < j; i++) {
|
|
41
|
-
btn = children[i];
|
|
42
|
-
let ul = btn.querySelector("ul");
|
|
43
|
-
|
|
44
|
-
if (btn == _btn) {
|
|
45
|
-
if (btn.className.indexOf("pressed") != -1) {
|
|
46
|
-
btn.classList.remove("pressed"); // 再次点击,隐藏!
|
|
47
|
-
if (ul) ul.style.height = "0px";
|
|
48
|
-
} else {
|
|
49
|
-
if (ul) ul.style.height = ul.scrollHeight + "px";
|
|
50
|
-
btn.classList.add("pressed");
|
|
51
|
-
}
|
|
52
|
-
} else {
|
|
53
|
-
btn.classList.remove("pressed");
|
|
54
|
-
if (ul) ul.style.height = "0px";
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
} else return;
|
|
58
|
-
},
|
|
59
|
-
},
|
|
60
|
-
};
|
|
61
|
-
</script>
|
|
62
|
-
|
|
63
|
-
<style lang="less" scoped>
|
|
64
|
-
@import "../style/common-functions.less";
|
|
65
|
-
|
|
66
|
-
// 折叠菜单 Accordion Menu
|
|
67
|
-
.aj-accordion {
|
|
68
|
-
& > li h3 {
|
|
69
|
-
cursor: pointer;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
.pressed {
|
|
73
|
-
& h3 {
|
|
74
|
-
color: black;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
& > li > ul {
|
|
79
|
-
.transition (height .5s cubic-bezier(0, 1, 0.5, 1));;
|
|
80
|
-
overflow: hidden;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
ul {
|
|
84
|
-
height: 0;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
.aj-accordion-menu {
|
|
89
|
-
.aj-accordion ();
|
|
90
|
-
overflow: hidden;
|
|
91
|
-
|
|
92
|
-
& > li {
|
|
93
|
-
border-top: 1px solid white;
|
|
94
|
-
border-bottom: 1px solid lightgray;
|
|
95
|
-
|
|
96
|
-
&.pressed {
|
|
97
|
-
border-top: 0;
|
|
98
|
-
border-bottom: 1px solid lightgray;
|
|
99
|
-
box-shadow: inset 0px 10px 15px -15px gray;
|
|
100
|
-
|
|
101
|
-
h3 {
|
|
102
|
-
font-weight: bold;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
ul {
|
|
107
|
-
li {
|
|
108
|
-
// list-style-type: disc;
|
|
109
|
-
padding-left: 15%;
|
|
110
|
-
|
|
111
|
-
a {
|
|
112
|
-
width: 100%;
|
|
113
|
-
display: block;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
&.selected {
|
|
117
|
-
a {
|
|
118
|
-
color: black;
|
|
119
|
-
font-weight: bold;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
h3,
|
|
126
|
-
li {
|
|
127
|
-
padding: 5px 0 5px 15px;
|
|
128
|
-
letter-spacing: 2px;
|
|
129
|
-
line-height: 20px;
|
|
130
|
-
color: #939da8;
|
|
131
|
-
font-size: 12px;
|
|
132
|
-
|
|
133
|
-
&:hover,
|
|
134
|
-
a:hover {
|
|
135
|
-
color: black;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
</style>
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="aj-adjust-font-size">
|
|
3
|
-
<span>字体大小</span>
|
|
4
|
-
<ul @click="onClk">
|
|
5
|
-
<li><label><input type="radio" name="fontSize" /> 小</label></li>
|
|
6
|
-
<li><label><input type="radio" name="fontSize" /> 中</label></li>
|
|
7
|
-
<li><label><input type="radio" name="fontSize" /> 大</label></li>
|
|
8
|
-
</ul>
|
|
9
|
-
</div>
|
|
10
|
-
</template>
|
|
11
|
-
|
|
12
|
-
<script lang="ts">
|
|
13
|
-
/**
|
|
14
|
-
* 调整正文字体大小
|
|
15
|
-
*/
|
|
16
|
-
export default {
|
|
17
|
-
props: {
|
|
18
|
-
articleTarget: { type: String, default: "article p" }, // 正文所在的位置,通过 CSS Selector 定位
|
|
19
|
-
},
|
|
20
|
-
methods: {
|
|
21
|
-
onClk(ev: Event): void {
|
|
22
|
-
let el: Element = ev.target as Element;
|
|
23
|
-
let setFontSize = (fontSize: string): void => {
|
|
24
|
-
document.body
|
|
25
|
-
.querySelectorAll(this.$props.articleTarget)
|
|
26
|
-
.forEach((p: HTMLParagraphElement) => (p.style.fontSize = fontSize));
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
if (el.tagName == "LABEL" || el.tagName == "INPUT") {
|
|
30
|
-
if (el.tagName != "LABEL") el = el.parentNode as Element;
|
|
31
|
-
|
|
32
|
-
if (el.innerHTML.indexOf("大") != -1) setFontSize("12pt");
|
|
33
|
-
else if (el.innerHTML.indexOf("中") != -1) setFontSize("10.5pt");
|
|
34
|
-
else if (el.innerHTML.indexOf("小") != -1) setFontSize("9pt");
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
};
|
|
39
|
-
</script>
|
|
40
|
-
|
|
41
|
-
<style lang="less" scoped>
|
|
42
|
-
.aj-adjust-font-size {
|
|
43
|
-
width: 210px;
|
|
44
|
-
font-size: 0.8rem;
|
|
45
|
-
padding: 2px 0;
|
|
46
|
-
|
|
47
|
-
span {
|
|
48
|
-
float: left;
|
|
49
|
-
width: 35%;
|
|
50
|
-
display: block;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
ul {
|
|
54
|
-
width: 65%;
|
|
55
|
-
float: right;
|
|
56
|
-
cursor: pointer;
|
|
57
|
-
|
|
58
|
-
li {
|
|
59
|
-
display: block;
|
|
60
|
-
float: right;
|
|
61
|
-
width: 33%;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
</style>
|