UNPKG

1.48 kBJavaScriptView Raw
1var now = +new Date();
2
3/**
4 * 生成唯一的id
5 * @return {String} uid
6 */
7export function uid() {
8 return (now++).toString(36);
9}
10
11export function fileToObject(file) {
12 if (!file.uid) {
13 file.uid = uid();
14 }
15
16 return {
17 lastModified: file.lastModified,
18 lastModifiedDate: file.lastModifiedDate,
19 name: file.filename || file.name,
20 size: file.size,
21 type: file.type,
22 uid: file.uid,
23 error: file.error,
24 percent: 0,
25 originFileObj: file
26 };
27}
28
29export function getFileItem(file, fileList) {
30 var matchKey = file.uid !== undefined ? 'uid' : 'name';
31 return fileList.filter(function (item) {
32 return item[matchKey] === file[matchKey];
33 })[0];
34}
35
36export function removeFileItem(file, fileList) {
37 var matchKey = file.uid !== undefined ? 'uid' : 'name';
38 var removed = fileList.filter(function (item) {
39 return item[matchKey] !== file[matchKey];
40 });
41 if (removed.length === fileList.length) {
42 return null;
43 }
44 return removed;
45}
46
47// https://developer.mozilla.org/en-US/docs/Web/API/FileReader/readAsDataURL
48export function previewFile(file, callback) {
49 var reader = new FileReader();
50 reader.onloadend = function () {
51 return callback(reader.result);
52 };
53 reader.readAsDataURL(file);
54}
55
56export var errorCode = {
57 EXCEED_LIMIT: 'EXCEED_LIMIT',
58 BEFOREUPLOAD_REJECT: 'BEFOREUPLOAD_REJECT',
59 RESPONSE_FAIL: 'RESPONSE_FAIL'
60};
\No newline at end of file