- 初始化项目
首先,创建一个新的目录来存放项目,并在该目录中初始化一个npm项目:
mkdir myServer
cd myServer
npm init -y
-
安装相关依赖
- 安装
express
- 安装
npm install express
- 安装
typescript和ts-node,ts-node可以直接运行 TypeScript 代码而无需先编译
npm install typescript ts-node
- 安装
@types/express,这是express的 TypeScript 类型定义
npm install @types/express
- 测试项目,安装
cors中间件允许跨域
npm install cors
- 创建
tsconfig.json文件
在项目根目录下创建一个tsconfig.json文件,以下是一个基本的配置示例:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"outDir": "dist",
"rootDir": "src",
"strict": true,
"esModuleInterop": true
}
}
- 创建项目结构
创建一个src目录,并在其中创建 TypeScript 文件,例如app.ts。 - 编写代码
在app.ts中编写的 Express 应用代码,示例如下:
import express from 'express';
const app = express();
const cors = require('cors');
// 全局使用 cors 中间件,允许所有来源的跨域请求
app.use(cors());
// 或者可以更精细地控制跨域选项
// app.use(cors({
// origin: 'http://your-allowed-origin.com', // 允许的特定来源
// methods: ['GET', 'POST', 'PUT', 'DELETE'], // 允许的 HTTP 方法
// allowedHeaders: ['Content-Type', 'Authorization'] // 允许的请求头
// }));
app.get('/', (req, res) => {
res.send('Hello, TypeScript Express!');
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
- 运行项目
使用以下命令运行项目:
npx ts-node src/app.ts
7.热更新
npm install --save-dev nodemon
package.json:
"scripts": {
"start": "npx ts-node src/app.ts",
"dev": "nodemon --exec ts-node src/app.ts",
},