在目录更新后读取HTML5文件系统

Reading HTML5 Filesystem after directory update

本文关键字:读取 HTML5 文件系统 更新      更新时间:2023-09-26

我正在尝试在Chrome Canary中与HTML5文件系统进行交互的动态界面,但我目前遇到了一个绊脚石。

我使用

dirReader.readEntries(function (entries) {
        if (!entries.length){
            return;
        }
        for (var i = 0 ; i < entries.length; i++){
            $scope.files.push(entries[i]);
        }
        dirReader.readEntries();
    }, errorHandler);

第一次得到它们,这很好。但是如果我创建一个新文件,并再次运行代码,它什么也没有返回。

我想它使用了对文件系统的旧引用或类似的东西,所以我想我需要重新初始化文件系统或目录读取器(这是猜测)?处理这个问题的最好方法是什么?

编辑:获取文件系统的新引用确实有效,但这让我有点呕吐。如果有更好的方法,那就更棒了。

优秀的HTML5rocks文件处理网站

要读取目录的内容,创建DirectoryReader并调用它的readEntries()方法。不能保证目录的所有条目将在对readEntries()的一次调用中返回。这意味着你需要保持调用DirectoryReader.readEntries(),直到没有返回结果为止。

我认为这意味着DirectoryReader是一个一次性对象。一旦你读了它,你将不会从它得到更多的数据。因此,与其获取新的文件系统引用,不如尝试创建一个新的DirectoryReader