我是节点js的新手,只是尝试完成learnyounode研讨会
当我通过" node filename.js"运行以下代码时它给了我错误
fs.js:418
binding.open(pathModule._makeLong(path),
^
TypeError: path must be a string
但它与#34; learnyounode运行filename.js"
一起工作正常var fs = require('fs')
var file = process.argv[2]
fs.readFile(file, function (err, contents) {
// fs.readFile(file, 'utf8', callback) can also be used
var lines = contents.toString().split('\n').length - 1
console.log(lines)
})
代码有什么问题
答案 0 :(得分:1)
learnyounode run filename.js
运行node filename.js {{fileToBeRead}}
,也就是说你需要给它一个命令行参数或者process.argv [2]将是未定义的,这会导致fs.readFile(undefined, . . .
抛出错误。