具有browserWindow和preload.js的电子生成器。无法加载预加载脚本

问题描述 投票:0回答:1

在main.js中,电子生成器和browserWindows预加载选项出现问题:

// Create the browser window.
  mainWindow = new BrowserWindow({
    x: mainWindowState.x,
    y: mainWindowState.y,
    width: mainWindowState.width,
    height: mainWindowState.height,
    minHeight: 500,
    minWidth: 1000,
    icon: path.join(__dirname, 'icon.ico'),
    frame: false,
    webPreferences: {
      preload: path.resolve(__dirname, 'preload.js'), // <--- PROBLEM
      nativeWindowOpen: true,
      spellcheck: true,
      nodeIntegration: false
    }
  });

启动打包的应用程序后,出现以下错误:

无法加载预加载脚本:C:\ Users [...] \ resources \ app.asar \ preload.js

preload.js与main.js位于同一目录。

有解决这个问题的想法吗?

凯W。

electron preload electron-builder
1个回答
0
投票

这是我的结构和配置:

build
   icon.ico
   icon.png
src
    constants
    electron-actions
    main
         main.js
         preload.js
    renderer
         index.js



package.json:

{
  "name": "appname",
  "version": "1.0.5",
  "description": "desc",
  "license": "MIT",
  "author": "TS",
  "keywords": [
    "Electron"
  ],
  "build": {
    "productName": "david3 smart client",
    "files": [
      "src/main/preload.js",
      "src/electron-actions/*,"
    ],
    "nsis": {
      "oneClick": true,
      "installerIcon": "icon.ico",
      "uninstallerIcon": "icon.ico"
    }
  },
  "scripts": {
    "dev": "electron-webpack dev",
    "compile": "electron-webpack",
    "dist": "yarn compile && electron-builder",
    "dist:dir": "yarn dist --dir -c.compression=store -c.mac.identity=null"
  },
  "dependencies": {
    "source-map-support": "^0.5.12"
  },
  "devDependencies": {
    "electron": "8.0.1",
    "electron-builder": "^22.3.2",
    "electron-builder-squirrel-windows": "^22.3.3",
    "electron-positioner": "^4.1.0",
    "electron-squirrel-startup": "^1.0.0",
    "electron-updater": "^4.2.0",
    "electron-webpack": "^2.7.4",
    "electron-window-state": "^5.0.3",
    "electron-windows-badge": "^1.0.5",
    "webpack": "4.41.6"
  }
}
´´´
© www.soinside.com 2019 - 2024. All rights reserved.