记录到javascript windows应用商店应用程序中不工作的文件时出错

记录到javascript windows应用商店应用程序中不工作的文件时出错,javascript,windows-phone-8,windows-store-apps,winjs,windows-applications,Javascript,Windows Phone 8,Windows Store Apps,Winjs,Windows Applications,我正在尝试将控制台日志写入文件。我尝试了这种方法,创建了一个日志文件,但没有添加任何内容。在应用程序开始时调用它。我做错什么了吗 function startFileLog() { // choose where the file will be stored: var fileDestination = Windows.Storage.ApplicationData.current.localFolder; var logger = new WinJS.Promise(function (c

我正在尝试将控制台日志写入文件。我尝试了这种方法,创建了一个日志文件,但没有添加任何内容。在应用程序开始时调用它。我做错什么了吗

function startFileLog() {
// choose where the file will be stored:
var fileDestination = Windows.Storage.ApplicationData.current.localFolder;

var logger = new WinJS.Promise(function (complete) {
    var logfilename = new Date().toISOString().replace(/[:-]/g, "");
    logfilename = "log-" + logfilename + ".log";
    fileDestination.createFileAsync(logfilename,
        Windows.Storage.CreationCollisionOption.generateUniqueName)
          .done(function (file) {
            complete(file);
        });
});

var actionFn = function (message, tag, type) {
    logger.then(function (file) {
        var m = WinJS.Utilities.formatLog(message, tag, type);
        Windows.Storage.FileIO.appendTextAsync(file, m).done();
    });
};

WinJS.Utilities.startLog({ action: actionFn });
}

我尝试了你的代码,当我使用WinJS.log登录时,它工作得很好,尽管如果你调用appendLinesAsyncfile,[m]结果会更好。您如何尝试创建日志条目?console.log不会进入这个机制,只有WinJS.log。我希望javascript控制台中的日志会写入文件。那有可能吗。如果你知道,请分享。只要记录是从WinJS.log完成的,那么它就应该进入你的文件。通过这种方式,您可以从WinJS库本身获得大量内容。但是,您的应用程序或其他库对console.log的任何调用都不会自动通过WinJS.log,即使它显示在控制台上。您需要重写console.log函数本身来重新路由它。