2015-06-13 1 views
7

Как вы просматриваете сообщения об ошибках и журналы консоли в Electron во время разработки? Кроме того, возможно ли, чтобы журналы записывались непосредственно в файл?Сообщения об ошибках и журналы консоли в Electron?


Edit: Вид как ошибки и консольных журналов, отображаемых Дев инструментов Chrome: Screenshot of Chrome's dev tools За исключением Electron, а не Chrome.

+0

Что такое средства журналов в Electron? –

+0

На стороне клиента вы не можете поддерживать файл регистрации, но на стороне сервера вы можете записать файл журнала в соответствии с моими знаниями. –

+0

@ManeeshSingh это клиентское приложение. Это нормально, если я не могу записать журналы в файл, но возможно ли их вообще просмотреть? – Oztaco

ответ

12

В окне браузераWindow функция openDevTools() откроет те же инструменты, которые вы найдете в Chrome. Я написал об этом в своем блоге по адресу http://www.mylifeforthecode.com/debugging-renderer-process-in-electron/.

Вот простой файл main.js, который включает в себя openDevTools:

var app = require('app'); 
var BrowserWindow = require('browser-window'); 

var mainWindow = null; 

app.on('window-all-closed', function() { 
    if (process.platform != 'darwin') 
    app.quit(); 
}); 

app.on('ready', function() {  
    mainWindow = new BrowserWindow({width: 800, height: 600}); 
    mainWindow.loadUrl('file://' + __dirname + '/index.html'); 
    mainWindow.openDevTools(); 
    mainWindow.on('closed', function() { 
    mainWindow = null; 
    }); 
}); 

Вы также можете получить доступ к этому через процесс рендеринга с использованием удаленного модуля. Для приложений, с которыми я работал, я связываю функцию toggleDevTools с F12. Что-то вроде этого:

var remote = require('remote');   
    document.addEventListener("keydown", function (e) { 
    if (e.keyCode === 123) { // F12 
     var window = remote.getCurrentWindow(); 
     window.toggleDevTools();   
    } 
    }); 

Обратите внимание, что я тестировал выше, используя Electron в Windows. Я предполагаю, что версии для Linux и Mac работают одинаково. Если вы используете Mac или Linux, пожалуйста, дайте мне знать, если они этого не сделают.

+1

Кроме того, для входа в файл вы также можете использовать типичный пакет ведения журнала, такой как Winston или Bunyan. – Josh

+0

Просто чтобы убедиться, что функция 'openDevTools()' отлично работает на Mac – user2370460

+0

re: @Josh - любой пример того, как подключить 'winston', чтобы переопределить« консоль »Electron? – evandrix

 Смежные вопросы

  • Нет связанных вопросов^_^