ブラウザの

<input type="file" webkitdirectory />

に大量のファイルを列挙させると死ぬほど遅いんだけど、そういうものなんだろうか。NASに置いた2万弱のファイルで4分以上かかってる。同じことをC++でやると3秒で終わる

フォロー

Chromeだと数秒で終わったわ。Firefoxくん…

プロファイル取ってみた。なんかファイルの属性を取ろうとして遅くなってるのかな

ブラウザでローカルファイルを列挙する方法には他にもdropイベントでDataTransferItem.webkitGetAsEntry()を使うとかがあるらしい。こっちだとFirefoxでもUIが固まらずに済んだ。

Google Driveでフォルダをアップロードするときの挙動を観察すると、ダイアログから選択した場合は<input>要素を、D&Dした場合はdataTransferを使っていそう (前者の場合はやっぱりUIが数分間固まる問題がある)

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。