質問編集履歴
2
該当コード追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -19,7 +19,25 @@
|
|
19
19
|
|
20
20
|
参考にしているサイトは、こちらです。
|
21
21
|
[参考サイト]https://qiita.com/wannabe/items/2b2f59a626313a8f58d4
|
22
|
+
以下、参考サイトそのままのコード
|
23
|
+
```
|
24
|
+
async function scanFiles(entry, tmpObject) {
|
25
|
+
switch (true) {
|
26
|
+
case (entry.isDirectory) :
|
27
|
+
let entryReader = entry.createReader();
|
28
|
+
let entries = await new Promise(resolve => {
|
29
|
+
entryReader.readEntries(entries => resolve(entries));
|
30
|
+
});
|
31
|
+
await Promise.all(entries.map(entry => scanFiles(entry, tmpObject)));
|
32
|
+
break;
|
33
|
+
case (entry.isFile) :
|
34
|
+
tmpObject.push(entry);
|
35
|
+
break;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
```
|
22
39
|
|
40
|
+
以下、実現したいコード
|
23
41
|
```
|
24
42
|
function fileObject(items, Transfer) {
|
25
43
|
|
1
エラー文及び該当ソースコードの追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -13,11 +13,46 @@
|
|
13
13
|
|
14
14
|
単純に”FileSystemオブジェクトをFileListに追加”すると、fileを受け取るはずが、ないよと言われ追加できません。
|
15
15
|
|
16
|
+
エラー文追記:Uncaught (in promise) TypeError: Failed to execute 'add' on 'DataTransferItemList': parameter 1 is not of type 'File'
|
17
|
+
|
16
18
|
### 該当のソースコード
|
17
19
|
|
18
|
-
作成できていないため、コードはありません。
|
19
20
|
参考にしているサイトは、こちらです。
|
20
21
|
[参考サイト]https://qiita.com/wannabe/items/2b2f59a626313a8f58d4
|
22
|
+
|
23
|
+
```
|
24
|
+
function fileObject(items, Transfer) {
|
25
|
+
|
26
|
+
for (let item of items) {
|
27
|
+
|
28
|
+
let entry = item.webkitGetAsEntry();
|
29
|
+
|
30
|
+
if (entry.isDirectory) {
|
31
|
+
|
32
|
+
// 省略
|
33
|
+
|
34
|
+
} else if (entry.isFile) {
|
35
|
+
|
36
|
+
Transfer.items.add(entry); // 該当コード
|
37
|
+
|
38
|
+
}
|
39
|
+
|
40
|
+
}
|
41
|
+
|
42
|
+
}
|
43
|
+
|
44
|
+
|
45
|
+
let Transfer = new DataTransfer()
|
46
|
+
$('~').on('drop', function (e) {
|
47
|
+
|
48
|
+
e.preventDefault();
|
49
|
+
|
50
|
+
let items = e.originalEvent.dataTransfer.items;
|
51
|
+
|
52
|
+
console.log(fileObject(items, Transfer))
|
53
|
+
|
54
|
+
})
|
55
|
+
```
|
21
56
|
|
22
57
|
### 試したこと
|
23
58
|
|