各操作をlog.txtというファイルに記録するノードjsアプリ(学習用)を構築しています
ロガー モジュールには次のコードがあります。
var fs = require('fs');
function write(data,filename)
{
var entry = 'Time: '+new Date();
if(filename !=null || filename != undefined) entry = entry+'\n\tFile: '+filename;
if(data !=null || data != undefined) entry = entry+'\n\tMessage: '+data;
entry = entry+'\n';
fs.appendFile('./log.txt',entry,function(err){
if(err){console.log('Log NOT Appended with data:\n\t'+entry);}
else{console.log('Log Appended with data:\n\t'+entry);}
});
}
exports.write = write;
今私のapp.jsで私はそれを次のように要求しています:
var logger = require('./logger');
var fs = require('fs');
function ReadFile()
{
var data = fs.readFileSync('./config.txt');
if(data==null)
logger.write("Config data not found");
else
logger.write(data,"app.js");
}
ReadFile();
これにより、次のようなエラーが返されます。
Object #<Object> has no method 'appendFile'
ただし、これは以前は別の PC で正常に機能していましたが、自分のシステムでアプリを実行しようとしたときにこれに気付きました。