嗨:]由于我的应用程序中有一些数字认证政策,所以我依赖用户通过浏览器注册表单。我不得不实施这个解决方案,因为电子不支持Mozilla Firefox的扩展,我完全需要它,因为为了让用户发送表格,他必须以数字方式验证一些关于公司所有权的文件,为此,他必须选择他的我上面提到的扩展数字证书。
我试图运行电子壳文档中的一些例子,但没有成功
我的main.js
const electron = require('electron');
const app = electron.app;
const BrowserWindow = electron.BrowserWindow;
var Menu = require('menu');
var fs = require('fs');
var shell = require('shell');
var mainWindow = null;
require("babel-register")();
app.on('window-all-closed', function() {
if (process.platform != 'darwin') {
app.quit();
}
});
app.on('ready', function() {
mainWindow = new BrowserWindow({
autoHideMenuBar: false,
webPreferences: {
nodeIntegration: false
},
width: 1200,
height: 750
});
var template = [
require("./server").start()
.then((app) => {
mainWindow.loadURL('http://localhost:3000');
}).catch((err) => {
});
mainWindow.openDevTools();
mainWindow.on('closed', function() {
mainWindow = null;
});
});
ipcMain.on('loadGH', (event, arg) => {
shell.openExternal(arg);
});
我的前端插件。
<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/css/materialize.min.css">
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/js/materialize.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/6.9.1/sweetalert2.min.js"></script>
我在head html中实例化了ICP模块
<script>
const ipc = require('electron').ipcRenderer;
</script>
我的按钮应该打开Mozilla Firefox
<a class="indigo white-text btn" onclick="ipc.send('loadGH','http://google.com');"><i class="material-icons left">undo</i>OPEN BROWSER</a>
非常感谢您的帮助!