我一直在Visual Studio 2017中开发移动应用程序,我需要做一些文件访问,但上周一直在挣扎。 我拥有的是:
function findCampaignFolders() {
alert("in find folder");
var fs = require('fs');
alert("finally past file system");
var Folders = fs.readdirSync("/Campagins");
var textString = "";
for (var i = 0; i < Folders.length; i++)
{
textString = textString + Folders[i];
}
alert(textString);
}
当调用此函数时,alert("in find folder");
工作并向其发送 PROMT。
但alert("finally past file system");
从不开火或之后的任何事情。
科尔多瓦被预测为fs.readdirSync ()
因此在VS2017中得到认可。
至于脚本加载顺序,看起来像在 HTML 文件中:
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="scripts/platformOverrides.js"></script>
<script type="text/javascript" src="scripts/Objects.js"></script>
对象.js是我的函数所在的位置。
如果有人至少能给我一个提示,说明为什么我不能让它工作,或者如果有另一种方法可以解决这个问题,那将是一个很大的帮助。
var fs = require('fs');
是 Node.js 代码,不适用于Cordova 应用程序。 Node.js 代码旨在用于服务器或 CLI 应用程序,但不能用于 Cordova 等客户端应用程序。
要在科尔多瓦中读取/写入文件,您必须使用cordova-plugin-file
https://github.com/apache/cordova-plugin-file