将 Express 生成的 app.js 文件更改为 server.js

change Express generated app.js file to server.js

我正在使用命令 express -e myAppName 来启动我的应用程序。

默认情况下,这会给我一个名为 app.js 的文件,众所周知,它包含我所有的服务器逻辑、中间件等。

我尝试将 app.js 的名称更改为 server.js,然后我收到了这个错误。 Error: Cannot find module '../app'

所以我进入我的 bin 目录并在 www 文件中将 var app = require('../app'); 更改为 var app = require('../server'); 但是这并没有修复错误所以它仍然存在。

我是 Web 开发的新手(3 个月),并且使用 MEAN 堆栈将近 2 个月。我环顾了一会儿,没有发现任何人试图像我想要的那样更改文件名。

您所做的是正确的(即更新 bin\www 中的路径)。

但是,您应该使用 npm start

启动您的快捷应用

一般来说,npm apps 允许您在包 json 中指定一个命令来启动您的应用程序,这是第一个要查看的地方。

对于生成的快递,这应该如下所示:

{
  "scripts" : {
    "start" : "node bin/www"
  }
}

如果您想更改它并稍后传递参数,您只需更新您的 package.json 文件,您的最终用户将不会受到影响。

npm start 为您的程序用户提供一种启动应用程序的一致方式,无论您更改什么文件名或参数

开发设置

在你的情况下,由于你在开发时使用nodemon来自动重启,你应该按如下方式使用它:

nodemon bin/www

与其修改您的入口点,不如制作一个像这样的特殊脚本:

{
  "scripts" : {
    "start" : "node bin/www",
    "devel" : "nodemon bin/www"
  }
}

然后启动 nodemon 使用:

npm run devel

这样您的最终用户就不会从 nodemon 开发工具开始。