与Phonegap一起使用GetFile时的专有参数

Dig*_*igM 1 android ios phonegap-plugins cordova phonegap-build

我正在阅读PhoneGap上的文档,并且正在努力理解获取文件时独占参数的要点。

因此,文档将其作为示例列出。

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

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

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

Sjo*_*uit 7

不同的对象文字及其差异

创建为假:

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

创建为true:

  • 如果Exclusive为true并且路径已经存在,则会引发错误。您将得到错误代码12(PATH_EXISTS_ERR)。

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

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

不同的对象文字及其差异

如何将独占参数设置为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