【问题标题】:Why does Electron Application not build sometimes?为什么有时无法构建电子应用程序?
【发布时间】:2017-12-26 02:33:03
【问题描述】:

我已经构建了一个电子应用程序。文件夹结构如下,

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>

当我使用 electron-packager 构建包时,构建成功。但是当我运行应用程序时,用 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 中的函数不起作用。 如何解决这个问题?

【问题讨论】:

  • 能否告诉我们script.js 文件中的内容?
  • 我在 script.js 中展示了一些代码
  • 你在使用 Webpack 吗?你试过electron-rebuild吗?我只提到这一点是因为打包应用程序时可能没有捆绑依赖项。
  • 没有@unseen_damage

标签: javascript electron electron-builder electron-packager


【解决方案1】:

尝试在捆绑应用的菜单中临时启用开发工具,看看网络或控制台部分是否有错误。

【讨论】:

    【解决方案2】:

    尝试像这样加载您的脚本:

    <script>
        require('../js/script.js');
    </script>
    

    【讨论】:

      【解决方案3】:

      在尝试阅读电子打包器文档 1 天后,我找到了答案。使用 electron-packager 打包时,将 package.json 中的 devDependencies 更改为 dependencies。那是因为 electron-packager 寻找依赖而不是 devDependencies。

      因此,在尝试打包应用之前,请将 devDependencies 重命名为依赖项或 npm install package_name --save

      ** 注意:使用electron-packager打包时不要使用--save-dev,因为-dev会使依赖项成为开发依赖。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-08-21
        • 2018-10-06
        • 2020-11-02
        • 2022-11-01
        • 2021-01-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多