javascript - 使用 fs writeFile 创建文件时 nodeJS 返回类型错误
问题描述
我刚开始学习nodeJS。我处于非常基础的水平。
现在我正在使用创建新文件和目录的方法。
这是我的代码 -
var fs = require('fs');
fs.mkdir("stuff", function () {
fs.readFile('readMe.txt', 'utf8', function (err, data){
fs.writeFile('./stuff/writeMe.txt', data);
});
});
它会创建目录并读取文件,但不会创建新文件。
我一次又一次地检查了代码,但终端返回了这个错误。
fs.js:152
throw new ERR_INVALID_CALLBACK(cb);
^
TypeError [ERR_INVALID_CALLBACK]: Callback must be a function. Received undefined
[90m at maybeCallback (fs.js:152:9)[39m
[90m at Object.writeFile (fs.js:1351:14)[39m
at D:\PRANAV\Learning Folder\Node\app.js:6:12
[90m at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:63:3)[39m {
code: [32m'ERR_INVALID_CALLBACK'[39m
}
我被困在这个问题上,请帮忙。
解决方案
fs.writeFile
的最后一个参数应该是一个回调函数。现在,你错过了它:
fs.mkdir("stuff", function () {
fs.readFile('readMe.txt', 'utf8', function (err, data) {
fs.writeFile('./stuff/writeMe.txt', data, function (err) {
if (err) {
throw err;
}
console.log('written successfully!');
});
});
});
推荐阅读
- python - 熊猫。切片后的空数据框
- excel - 根据单元格值从 Excel 工作表中提取数据
- c++ - GIMP 卷积矩阵滤波器背后的数学(或代码)是什么
- c - 只要输入多于一个数字,GCC 6.3 就会引发运行时错误。可能的原因是什么?
- pyspark - pyspark:获取每个子组中的最后一个观察值
- javascript - 使用 PHP 填充 Javascript 变量
- pivot - 雪花中两个字符串列之间的区别
- python - 如何执行日志(1-f)?
- python-3.x - 可触发调度程序可以使用更改过滤器,还是可以触发构建步骤以属性为条件?
- mongodb - 如何使用 mongodb 聚合在子文档数组的每个文档上添加位置字段?