我已经使用 GitHub 的 Electron 构建了一个应用程序。我正在使用推荐的加载模块的方式,ES6 语法:
import os from 'os'
下载样板后,该应用程序运行正常。我已经能够background.js
毫无问题地在文件中导入脚本。以下是我加载自定义模块的方式:
import { loadDb } from './assets/scripts/database.js';
clipboard.html
但是,当我在 Electron 中clipboard.js
打开一个新的浏览import
器窗口(在这一点上,我收到一个Unexpected token import
错误。
我的clipboard.html
:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Electron Boilerplate</title>
<link href="./stylesheets/main.css" rel="stylesheet" type="text/css">
<script>
window.$ = window.jQuery = require('./assets/scripts/jquery-1.12.1.min.js');
</script>
<script src="./assets/scripts/clipboard.js"></script>
</head>
<body class="clipboard">[...]</body></html>
我的clipboard.js
文件:
import { remote } from 'electron'; // native electron module
import { loadDb } from './assets/scripts/database.js';
const electron = require('electron');
document.addEventListener('DOMContentLoaded', function () {
var db = loadDb();
db.find({ type: 'text/plain' }, function (err, docs) {
var docsjson = JSON.stringify(docs);
console.log(docsjson);
});
});
只是为了重新迭代,在app.html
我的应用程序的主窗口中使用了相同的代码,这不会出错。
感觉就像主窗口正在初始化我的clipboard.html
窗口没有的东西(也许是“汇总”?),但我的应用程序代码中没有明确的建议。