ronds-metadata 1.1.70 → 1.1.72
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.
@@ -1,5 +1,5 @@
|
|
1
|
-
import "antd/es/
|
2
|
-
import
|
1
|
+
import "antd/es/empty/style";
|
2
|
+
import _Empty from "antd/es/empty";
|
3
3
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
4
4
|
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
5
5
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
@@ -10,6 +10,7 @@ import * as XLSX from 'xlsx';
|
|
10
10
|
|
11
11
|
var FileView = function FileView(props) {
|
12
12
|
var path = props.path,
|
13
|
+
data = props.data,
|
13
14
|
_props$limit = props.limit,
|
14
15
|
limit = _props$limit === void 0 ? 1000 : _props$limit;
|
15
16
|
var ref = React.useRef(null);
|
@@ -28,35 +29,38 @@ var FileView = function FileView(props) {
|
|
28
29
|
var processDataToExcel = React.useCallback(function (data) {
|
29
30
|
var _title = [];
|
30
31
|
var _value = [];
|
31
|
-
var p = data[0];
|
32
|
-
var f = Object.keys(p);
|
33
|
-
_title = f.map(function (it) {
|
34
|
-
return {
|
35
|
-
title: it,
|
36
|
-
width: 100,
|
37
|
-
align: 'left'
|
38
|
-
};
|
39
|
-
});
|
40
|
-
setTitle(_toConsumableArray(_title));
|
41
32
|
|
42
|
-
|
43
|
-
var
|
44
|
-
|
33
|
+
if (data && data.length > 0) {
|
34
|
+
var p = data[0];
|
35
|
+
var f = Object.keys(p);
|
36
|
+
_title = f.map(function (it) {
|
37
|
+
return {
|
38
|
+
title: it,
|
39
|
+
width: 100,
|
40
|
+
align: 'left'
|
41
|
+
};
|
45
42
|
});
|
43
|
+
setTitle(_toConsumableArray(_title));
|
46
44
|
|
47
|
-
|
45
|
+
var _loop = function _loop(i) {
|
46
|
+
var arr = f.map(function (it) {
|
47
|
+
return data[i][it];
|
48
|
+
});
|
48
49
|
|
49
|
-
|
50
|
-
};
|
50
|
+
_value.push(arr);
|
51
51
|
|
52
|
-
|
53
|
-
|
52
|
+
if (i === limit - 1) return "break";
|
53
|
+
};
|
54
54
|
|
55
|
-
|
56
|
-
|
55
|
+
for (var i = 0; i < data.length; i++) {
|
56
|
+
var _ret = _loop(i);
|
57
|
+
|
58
|
+
if (_ret === "break") break;
|
59
|
+
}
|
57
60
|
|
58
|
-
|
59
|
-
|
61
|
+
setValue([].concat(_value));
|
62
|
+
firstLoadRef.current = false;
|
63
|
+
}
|
60
64
|
}, []);
|
61
65
|
var getFileData = React.useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
62
66
|
var res, blob, fileReader;
|
@@ -79,14 +83,17 @@ var FileView = function FileView(props) {
|
|
79
83
|
|
80
84
|
case 6:
|
81
85
|
blob = _context.sent;
|
82
|
-
fileReader = new FileReader();
|
86
|
+
fileReader = new FileReader();
|
87
|
+
// blob.type = 'text/csv;charset=utf-8;';
|
88
|
+
// const bl = new Blob([blob], { type: 'text/csv;charset=utf-8;' });
|
89
|
+
// console.log('blob2', bl);
|
90
|
+
//二进制
|
83
91
|
// fileReader.readAsBinaryString(blob);
|
84
|
-
|
85
92
|
fileReader.readAsArrayBuffer(blob);
|
86
93
|
|
87
94
|
fileReader.onload = function (event) {
|
88
95
|
try {
|
89
|
-
var
|
96
|
+
var _data = [];
|
90
97
|
var binary = ''; // 以二进制流方式读取得到整份excel表格对象
|
91
98
|
|
92
99
|
var result = event.target.result;
|
@@ -105,13 +112,13 @@ var FileView = function FileView(props) {
|
|
105
112
|
for (var sheet in workbook.Sheets) {
|
106
113
|
if (workbook.Sheets.hasOwnProperty(sheet)) {
|
107
114
|
// 利用 sheet_to_json 方法将 excel 转成 json 数据
|
108
|
-
|
115
|
+
_data = _data.concat(XLSX.utils.sheet_to_json(workbook.Sheets[sheet])); // 如果只取第一张表,就取消注释这行
|
109
116
|
|
110
117
|
break;
|
111
118
|
}
|
112
119
|
}
|
113
120
|
|
114
|
-
processDataToExcel(
|
121
|
+
processDataToExcel(_data);
|
115
122
|
} catch (e) {
|
116
123
|
return;
|
117
124
|
}
|
@@ -129,9 +136,14 @@ var FileView = function FileView(props) {
|
|
129
136
|
getFileData();
|
130
137
|
}
|
131
138
|
}, [getFileData, path]);
|
139
|
+
React.useEffect(function () {
|
140
|
+
if (data && firstLoadRef.current) {
|
141
|
+
processDataToExcel(data);
|
142
|
+
}
|
143
|
+
}, [getFileData, data]);
|
132
144
|
|
133
145
|
if (!value) {
|
134
|
-
return /*#__PURE__*/React.createElement(
|
146
|
+
return /*#__PURE__*/React.createElement(_Empty, null);
|
135
147
|
}
|
136
148
|
|
137
149
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ReactJexcel, {
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"public": true,
|
3
3
|
"name": "ronds-metadata",
|
4
|
-
"version": "1.1.
|
4
|
+
"version": "1.1.72",
|
5
5
|
"scripts": {
|
6
6
|
"start": "dumi dev",
|
7
7
|
"docs:build": "dumi build",
|
@@ -44,6 +44,7 @@
|
|
44
44
|
"babel-plugin-transform-remove-console": "^6.9.4",
|
45
45
|
"bl": "^5.0.0",
|
46
46
|
"codemirror": "^5.63.0",
|
47
|
+
"codepage": "^1.15.0",
|
47
48
|
"github-markdown-css": "^5.1.0",
|
48
49
|
"immer": "^9.0.14",
|
49
50
|
"lodash": "^4.17.21",
|