使用 chrome.fileSystem 动态显示文件夹的内容
Display the contents of folders dynamically with chrome.fileSystem
这是否可能 chrome.filesystem 单击列表上方显示的文件夹名称,它会动态显示该文件夹中的文件。示例:
这是我的问题:
文件夹 1
文件夹 2
文件夹 3
如果我单击文件夹 2,chrome 会显示文件夹 2 中包含的文件。依此类推。
提前感谢您的帮助!
两种回答方式:
如果应用程序拥有所有可用的信息(整个树结构),那么答案是肯定的,可以构建这样一个动态 UI。
如果应用程序必须执行 #1,但还要发现每个目录中的文件和目录,那么列出目录内容的唯一方法是让用户明确选择chrome.fileSystem.chooseEntry
目录。用户选择目录后,您可以递归枚举其内容,而无需用户使用 chrome.fileSystem.chooseEntry
进行进一步选择。有关如何执行上述操作的详细信息(例如,枚举内容),请参阅评论中引用的示例以及 chrome.fileSystem API 的详细信息。
更新:一旦用户使用 chrome.fileSystem.chooseEntry
选择了文件或目录,应用程序可以通过调用 chrome.fileSystem.retainEntry
保留该条目,并且。在应用程序的后续执行中,使用 chrome.fileSystem.restoreEntry
恢复它,从而避免用户再次选择它。
这是否可能 chrome.filesystem 单击列表上方显示的文件夹名称,它会动态显示该文件夹中的文件。示例:
这是我的问题: 文件夹 1 文件夹 2 文件夹 3
如果我单击文件夹 2,chrome 会显示文件夹 2 中包含的文件。依此类推。
提前感谢您的帮助!
两种回答方式:
如果应用程序拥有所有可用的信息(整个树结构),那么答案是肯定的,可以构建这样一个动态 UI。
如果应用程序必须执行 #1,但还要发现每个目录中的文件和目录,那么列出目录内容的唯一方法是让用户明确选择
chrome.fileSystem.chooseEntry
目录。用户选择目录后,您可以递归枚举其内容,而无需用户使用chrome.fileSystem.chooseEntry
进行进一步选择。有关如何执行上述操作的详细信息(例如,枚举内容),请参阅评论中引用的示例以及 chrome.fileSystem API 的详细信息。
更新:一旦用户使用 chrome.fileSystem.chooseEntry
选择了文件或目录,应用程序可以通过调用 chrome.fileSystem.retainEntry
保留该条目,并且。在应用程序的后续执行中,使用 chrome.fileSystem.restoreEntry
恢复它,从而避免用户再次选择它。