本文主要讲的是在用electron打包现有的工程时遇到的问题,然后怎么解决
1.html页面引用的JS文件不起作用?
注意jquery的引用最好放在第一位
(1)全域安装jQuery
全域插件不能带 .js 副档名,require里不要带文件后缀
<script>window.$ = window.jQuery = require("./js/jquery.min");</script>
(2)非全域安装jquery
stackoverflow上有大神的讲解
http://stackoverflow.com/questions/32621988/electron-jquery-is-not-defined
GitHub上的解释
https://github.com/electron/electron/issues/254#issuecomment-183483641
而这主要原因据在下不专业理解是因为 HTML这个子程序请求 jQuery,
然而全域并没有安装,所以任凭你丟十二道金牌 electron 还是不会乖乖地响应的,
上面提供的方法是告诉 electron 老子今天用这个 jQuery 用不着你 Node 模组管,
劳资另立专供通道,YCYU-NOBB。根据原作者的说法所有第三方库均能依此补贴土法炼。
<!-- Insert this line above script imports -->
<script>if (typeof module === 'object') {window.module = module; module = undefined;}</script>
<!-- normal script imports etc -->
<script src="scripts/jquery.min.js"></script>
<script src="scripts/vendor.js"></script>
<!-- Insert this line after script imports -->
<script>if (window.module) module = window.module;</script>
或者在jquery后面加上也能实现
<script>if (typeof module === 'object') {window.jQuery = window.$ = module.exports;};</script>
2.打包版本问题
electron可以自定义打包的版本
(1)win64位
"packager": "electron-packager ./app Bootstrap --platform=win32 --arch=x64 --out ./OutApp --version 1.4.15 --overwrite"