controller.ts 如何写
时间: 2023-10-18 15:24:41 浏览: 38
controller.ts 是一个控制器文件,通常用于处理 HTTP 请求和响应。下面是一个简单的 controller.ts 文件示例:
```typescript
import { Request, Response } from 'express';
import { UserRepository } from '../repositories/user.repository';
export class UserController {
private userRepository: UserRepository;
constructor() {
this.userRepository = new UserRepository();
}
public async getUsers(req: Request, res: Response) {
try {
const users = await this.userRepository.getUsers();
res.status(200).json(users);
} catch (err) {
res.status(500).json({ error: err.message });
}
}
public async createUser(req: Request, res: Response) {
try {
const user = await this.userRepository.createUser(req.body);
res.status(201).json(user);
} catch (err) {
res.status(500).json({ error: err.message });
}
}
}
```
上面的代码使用了 TypeScript 和 Express.js 框架。它定义了一个 UserController 类,该类包含了两个方法:getUsers 和 createUser,用于获取用户列表和创建新用户。这些方法调用了 UserRepository 类的方法来实现数据库操作。如果出现错误,它们会返回适当的 HTTP 状态码和错误消息。