如何更改 Nuxt 构建的入口点?

How to change entrypoint on Nuxt build?

我已经通过 CLI 创建了一个 Nuxt 应用程序,我选择了使用 Node.js 作为后端服务器的 SSR 应用程序。在我的服务器上,Passenger 配置为 运行 express apps from app.js 文件,我无权更改它。 Nuxts 入口点默认是server.js。我试图在 nuxt 文档上找到一些东西,但我找不到任何有用的东西。

我在这个网站上搜索:https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-build

我还认为那些 Js 文件在 ES6 模块格式化系统中,但我还需要 CommonJS 运行 这个带有 Passenger 的应用程序。有什么办法可以用 .babelrc 或 webpack 配置来改变这个吗??

Webpack 的输出名称在 Nuxt source code 中硬编码。
所以不能通过配置更新。

目前最好的方法是在输出文件夹中创建一个从“app.js”到“server.js”的符号链接(也许在“postbuild”脚本上?)

感谢 Nicolas Pennec 指出我的答案。

当我们想 运行 nuxt.js 通过 Passenger 构建应用程序时,我们实际上不需要重写 webpack 等

我们需要构建我们的 nuxt 应用:

yarn build

该操作的结果是新创建的 .next 文件夹,剩下要做的就是我们需要用 npm 运行 start 启动这个文件夹,但是对于 Passenger,我们不能通过命令执行此操作。

在我们托管的根文件夹中,例如public_nodejs 创建 app.js 文件(我服务器上的 Passenger 需要调用主文件 app.js)

文件结构现在如下所示:

.next
app.js
package.json

里面app.js简单的写:

require("@nuxt/cli").run(["start"])

安装所有依赖项,你的 nuxt js 应用程序将 运行通过 Passenger