将GetFile与Phonegap

时间:2015-09-30 09:58:53

标签: android ios cordova phonegap-plugins phonegap-build

我正在阅读有关PhoneGap的文档,我很难理解获取文件时独占参数的重点。

因此文档将此列为一个示例。

// Create the lock file, if and only if it doesn't exist.
lockFile = dataDir.getFile("lockfile.txt", {create: true, exclusive: true});

所以我正在努力解决的问题是,如果文件不存在,它肯定会创建“lockfile.txt”吗?

如何将exclusive参数设置为true会有什么不同?什么时候需要?

1 个答案:

答案 0 :(得分:4)

不同的对象文字及其差异

创建为假:

  • 独家将被忽略。
  • 如果路径存在,则返回文件。
  • 如果路径不存在,则抛出错误。您将收到错误代码1(NOT_FOUND_ERR)。
  • 如果路径存在,但它是一个目录,则会引发错误。您将收到错误代码11(TYPE_MISMATCH_ERR)。

创建为真:

  • 如果exclusive为true且路径已存在,则抛出错误。您将收到错误代码12(PATH_EXISTS_ERR)。

  • 如果exclusive为false,则路径已存在时不会出现错误。当路径不存在时,将创建一个文件。

我在上面输入的所有内容也可以在下面的图片中看到。

Different object literals and their differences

如何将exclusive参数设置为true会有什么不同?

当create为false时,它不会有任何区别。当create为true且文件存在时,它将不会被覆盖,您将收到错误。您将收到错误代码12(PATH_EXISTS_ERR)。

何时需要?

也许你不希望你的文件被覆盖。

来源:

图片:https://developer.mozilla.org/en-US/docs/Web/API/DirectoryEntry

错误代码:https://developer.mozilla.org/en-US/docs/Web/API/FileError