3

我正在尝试使用以下方法构建项目:

我的目标是有一个 Electron 打包的应用程序,里面有 Strapi 服务器,为这个无反应模板提供服务。

所以我对将这些工具放在一起完全感到困惑。每个都有你的 web 包、开发服务器、构建过程等......

我知道这没有简单的秘诀,但是有什么方法或技巧可以帮助我,或者只是一个方向?

4

1 回答 1

2

我做到了,有可能做到,但我仍然有一些像这个一样没有弄清楚的事情

因此,为了实现您的目标,这需要在您的电子 index.js 文件中,您需要构建前端,并将构建过程的输出粘贴到您的公共文件夹中。

您还需要将带有 (api, assets, build, config, db, extensions, public) 文件夹的 package.json 从您的 strapi 项目复制到打包的电子应用程序文件夹中(在 exe 文件旁边)。

我知道这是个老问题,但我认为它可能会对某人有所帮助。

function createWindow() {

    // Create the browser window.
    const win = new BrowserWindow({
        maximizable: true,
        title: "Dental System",
        webPreferences: {
            nodeIntegration: true
        }
    })
    win.maximize();

    strapi().start().then(() => {
        win.loadURL('http://localhost:1337/');
    }).catch((e) => {
        console.log(e);
    });

    win.on('closed', () => {
        app.quit();
    })
}

app.whenReady().then(createWindow)

app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') {
        app.quit()
    }
})

app.on('activate', () => {
    if (BrowserWindow.getAllWindows().length === 0) {
        createWindow()
    }
})
于 2020-08-08T12:56:33.943 回答