我已經構建了一個電子應用程序。文件夾結構如下,電子應用程序不能正常工作
App
js
script.js
css
db
node_modules
views
package.json
main.js
我已經包含在下面的形式中,JS文件, 在HTML中,
<head>
<script src= "../js/jquery.js"></script>
<script src= "../js/bootstrap.min.js"></script>
<link rel="stylesheet" href = "../css/css/bootstrap.min.css"/>
</head>
stuff..............
<script src="../js/script.js"></script>
當我使用電子包裝機建立的包,構建成功。但是,當我運行應用程序時,script.js中寫入的功能無法正常工作。
更新1 在我的script.js,我寫了下面的代碼
var Datastore = require('nedb')
, db = new Datastore({ filename: 'db/data.db', autoload: true });
const fs = require('fs');
const {dialog} = require('electron').remote;
const XLSX = require('xlsx');
$(document).ready(function(){
pricing_view();shipping_view();etr_view();cost_view();
})
stuff .................
$("#percentage,#channel_name,#brand").bind('keyup mouseup', function
() {
populate();
});
更新2: 我用devtools查找錯誤。這是說沒有找到nedb模塊。
當我運行npm start時,一切都會正常工作。但是在構建之後,script.js中的函數不起作用。 如何解決此問題?
更新3 我找到了答案後第1天的努力和閱讀電子打包的文件。使用電子打包程序進行打包時,請將package.json中的devDependencies更改爲依賴項。這是因爲electron-packager尋找依賴而不是devDependencies。
因此,在嘗試打包應用程序之前,要麼將devDependencies重命名爲依賴項,要麼將npm install package_name --save重命名。
**注意:使用electron-packager進行打包時,不要使用--save-dev,因爲-dev會使依賴關係成爲依賴關係。
也許告訴我們什麼是'script.js'文件裏面? – Erazihel
我已經顯示script.js內的一些代碼 – bigbounty
你是否使用Webpack?你有沒有嘗試[電子重建](https://github.com/electron/electron-rebuild)?我只提到,因爲在打包應用程序時可能不會捆綁依賴關係。 –