我一直在玩Electron和AngularJS,并构建了一个简单的应用程序。 如果我用电子运行它,它按预期工作。 使用电子打包器将应用程序打包成win32可执行文件后它不再起作用了。 (打开白色窗口即可)。
在打包时有没有看到一些调试? 我不知道出了什么问题,我唯一能做的就是做错了#34;错误"包括一些外部CDN库。这是允许在Electron中还是我必须用节点安装所有内容?
答案 0 :(得分:1)
要在Electron中有效调试,您必须在应用的main.js
文件中打开浏览器嵌入式开发人员工具,然后在电子启动时访问它们。例如,下面是一些代码,它们将加载您的应用并打开一个菜单,其中包含一个子菜单,用于启动Chrome的开发人员工具(或通过此处定义为Ctrl-Shift-I for Windows的快捷方式)。
app.on('ready', function () {
'use strict';
var path = require('path');
var iconPath = path.resolve(__dirname, './dist/app.ico');
const appIcon = new Tray(iconPath);
mainWindow = new Window({
width: 1280,
height: 1024,
autoHideMenuBar: false,
useContentSize: true,
resizable: true,
icon: iconPath
// 'node-integration': false // otherwise various client-side things may break
});
appIcon.setToolTip('My App');
mainWindow.loadURL('http://localhost:3000/');
var template = [
{
label: 'View',
submenu: [
{
label: 'Toggle Developer Tools',
accelerator: (function() {
if (process.platform === 'darwin') {
return 'Alt+Command+I';
} else {
return 'Ctrl+Shift+I';
}
})(),
click: function(item, focusedWindow) {
if (focusedWindow) {
focusedWindow.toggleDevTools();
}
}
},
]
}
];
var menu = Menu.buildFromTemplate(template);
Menu.setApplicationMenu(menu);
mainWindow.focus();
});