2016-10-25 27 views
0

我正在使用Node v6.7.0尝试使用'fs'模块,但出现如下所示的错误。我试图安装它,但不工作(即使我添加整个路径)。如果我检查网站https://www.npmjs.com/package/fs,您可以看到该消息。任何想法如何使用模块?Fs模块错误

var filename = process.argv[2]; 
var version = process.argv[3]; 
var fs = require('fs'); 
var prompt = require('C:/Program Files/nodejs/node_modules/prompt'); 
var p4 = require('C:/Program Files/nodejs/node_modules/p4'); 



p4.edit(filename, function(err, data) { 
    if (err) { 
     console.error(err.message); 
    } 
    fs.readFile(filename, 'utf8', function (err, data) { 
     if (err) { 
      return console.log(err); 
     } 
     var result = data.replace(/string to be replaced/g, version); 

     fs.writeFile(filename, result, 'utf8', function (err) { 
      if (err) return console.log(err); 
     }); 
    }); 
    console.log(data); 

    prompt.start(); 
    prompt.get('p4 submit -c changelist', function (err, result) { 
     if(err) { 
      console.log(err.message); 
     } 
     console.log(result); 
    }); 
}); 

fs.js:303 
    binding.open(pathModule._makeLong(path), 
     ^

TypeError: path must be a string or Buffer 
    at TypeError (native) 
    at Object.fs.readFile (fs.js:303:11) 
    at C:\WorkSpace\http.js:22:9 
    at C:\Program Files\nodejs\node_modules\p4\p4.js:13:24 
    at ChildProcess.exithandler (child_process.js:213:5) 
    at emitTwo (events.js:106:13) 
    at ChildProcess.emit (events.js:191:7) 
    at maybeClose (internal/child_process.js:877:16) 
    at Socket.<anonymous> (internal/child_process.js:334:11) 
    at emitOne (events.js:96:13) 

Process finished with exit code 1 
+3

您是否在使用之前尝试记录路径?它可能不包含你认为它的价值。 –

+0

是的,但它没有工作..我认为问题出在模块packege我安装..模块文件夹的内容太空了..只有两个文件package.json和readme.md – kai0

+0

如果我重新安装模块......看到控制台消息C:\ Windows \ System32下> NPM安装FS -g C:\ Program Files文件\的NodeJS ' - [email protected] – kai0

回答

0

我发现它应该在节点命令行和VAR的文件名被执行的答案= process.argv [2];必须填满。

+0

您应该将此注释标记为解决方案,以便其他人不读这个并尝试回答问题。 –

+0

我可以在接下来的2天内做到这一点..但现在不..现在不允许。 – kai0