1

我有一个preload在开发中运行良好的脚本。我在这里看到我需要使用static文件或webpack. 我采用了这种static方法,因为我的知识是零webpack

目前,我正在使用 webview,这个 webview 具有preload以下内容:

<webview :id="webview.key" :src="webview.url" :preload="preload_path" style="height: 100%" pcontextIsolation></webview>

如下preload_path

preload_path: `file://${path.join(__static, '/serverBrowserIPC.js')}`,

我的项目结构是:

- dist
- - static 
    serverBrowserIPC.js 
    api.js
- src 
- - main 
- - renderer 

preload文件是serverBrowserIPC.js,并且serverBrowserIPC.js需要api.js

require("./api.js")

由于我不知道的已知原因,preload它无法正常工作并且引发以下错误:

F:\Web\my-project\build\win-unpacked\resources\app.asar\dist\electron\static\serverBrowserIPC.js

对我来说,这没有意义,因为我已经声明它在一个静态文件夹中,但electron-app决定通过捆绑的app.asar.

我希望有人能帮助我解决这个问题。

4

1 回答 1

1

对我来说,问题似乎是您的项目结构略有错误。静态目录应该位于项目根目录中。当您为生产构建应用程序时,该目录将被复制到 app.asar 目录中。这就是为什么它在那里寻找。但是,由于根目录中没有静态目录,因此不会复制任何内容。

要检查项目目录结构,请查看以下文档页面: https ://webpack.electron.build/project-structure

于 2020-08-11T22:01:14.330 回答