这是一份 2024 年如何设置 Node.js 项目的快速教程。内容包括 TypeScript、实时重新加载和环境变量支持。
设置项目
确保您的 Node.js 版本 >= 20.6。
代码语言:javascript复制mkdir my-node-app
cd my-node-app/
git init
npm init -y
npm i -D typescript ts-node @types/node
npx tsc --init
接下来,打开 package.json 并添加以下内容:
代码语言:javascript复制{
"engines": {
"node": ">=20.6.0"
},
"name": "my-node-app",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"build": "tsc",
"dev": "node --env-file=.env --watch -r ts-node/register src/index.ts",
"test": "echo "Error: no test specified" && exit 1"
},
"author": "Jason Lengstorf <jason@learnwithjason.dev>",
"license": "ISC",
"devDependencies": {
"@types/node": "^20.11.17",
"ts-node": "^10.9.2",
"typescript": "^5.3.3"
}
}
注意:
- --watch 标志是在 Node v18.11.0 中添加的。
--env-file=config
标志是在 Node v20.6.0 中添加的。
添加环境变量
代码语言:javascript复制// .env
TEST_VALUE=hello
创建应用程序文件
创建 src/index.ts
并放入一些代码:
// src/index.ts
function test(): void {
console.log(process.env.TEST_VALUE);
}
test();
启动 Node 服务器并测试实时重新加载
代码语言:javascript复制❯ npm run dev
> my-node-app@1.0.0 dev
> node --env-file=.env --watch -r ts-node/register src/index.ts
(node:29702) ExperimentalWarning: Watch mode is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
hello
Completed running 'src/index.ts'
对 src/index.ts
文件进行更改,服务器将自动重新启动,并在控制台中显示您的更改。
就是这样 - 现在您拥有一个使用尽可能少的依赖项、为 2024 年构建应用程序进行现代化处理的 Node 应用程序,同时具有 TypeScript 运行和实时重新加载环境变量。
参考 https://www.learnwithjason.dev/blog/modern-node-server-typescript-2024