Javascript 如何使用node webkit js编写文件?

Javascript 如何使用node webkit js编写文件?,javascript,node.js,npm,node-webkit,Javascript,Node.js,Npm,Node Webkit,当我构建应用程序时,“fs”模块不工作。所以,它必须写入文件,但当我启动我的应用程序时,什么都没有发生。但如果我以以下方式启动应用程序: $ /path/to/app nw 它工作正常。怎么了 我使用fs的一些代码: function check_prob_2(){ console.log('Problem 2'); fs.appendFile('log.txt', 'Checking problem 2: \n\n'); ... } 我使用那个函数,但它不起

当我构建应用程序时,“fs”模块不工作。所以,它必须写入文件,但当我启动我的应用程序时,什么都没有发生。但如果我以以下方式启动应用程序:

$ /path/to/app nw
它工作正常。怎么了

我使用fs的一些代码:

function check_prob_2(){
    console.log('Problem 2');
    fs.appendFile('log.txt', 'Checking problem 2: \n\n');
    ...
    }
我使用那个函数,但它不起作用。它不仅仅在构建应用程序之后才起作用。我用

构建它尝试以下方法:

包括以下(标准)模块:

按如下方式指定路径:

fs.appendFile(path.resolve(__dirname, './log.txt'), 'Checking problem 2: \n\n');
可以找到有关_dirname全局的更多信息

编辑

由于节点webkit中未定义_dirname,因此必须使用以下解决方法:

创建一个文件
util.js
,或者以您想要的方式调用它,其中包含以下行:

exports.dirname = __dirname;
__dirname变量现在可以在主文件中公开:

var dirname = require('./util.js').dirname;
并将代码中的
\u dirname
替换为
dirname


详细信息

尝试使用此路径/log.txt@Alesfatalis我将“log.txt”替换为“./log.txt”,但仍然不起作用。webkit.js的工作原理与我想象的不同。试试Renzos,回答应该可以。它说:_dirname没有定义,但是如果我运行$node app.js它可以工作,nwjs有问题吗?看起来node webkit没有公开_dirname。您必须使用变通方法,请参阅我编辑的答案
var dirname = require('./util.js').dirname;