ここでは、javascript でオブジェクトを構築しようとしています。しかし、次のようなランタイムエラーが発生しています:
TypeError: Cannot set property 'functWriteToLogFile' of undefined
次のように私のJavaScriptオブジェクト:
function SetAstAppLog(logFolderPath,fileNamePrefix,fileSize,logStreamObject) {
.
.
.
.
this.functWriteToLogFile = function (fileNamePrefix, message) {
console.log("functWriteToLogFile " + message);
var currLogStreamObject = initLogPath(fileNamePrefix);
console.log("********************");
console.log(fileNamePrefix);
console.log(filePath);
currLogStreamObject.write(message + '\n');
this.emit('written');
};
initLogPath(fileNamePrefix);// Set log path on creation of new object.
this.emit('objCreated');
}
私はfunctWriteToLogFile
次のような他の機能にアクセスしたいです:
SetAstAppLog.prototype.funcLogErrors = function (fileNamePrefix,errLevel,err,req) {
//make new json object here then call functWriteToLogFile
this.functWriteToLogFile(fileNamePrefix, JSON.stringify(logErrorObj));
};
ここで自分の間違いを見つけることができません。
誰でもこの問題を解決するのを手伝ってもらえますか?
編集 :
私は次の方法でこの関数を呼び出しています:
var SetAstAppLog = require('astAppLog')();
var fileSize = 1024;
var objCommLogger = new SetAstAppLog(logFolderPath,logCommFilePrefix,fileSize,logCommMsg);