在使用Express创建Node.js应用时,默认在所有控制器中注入模型和服务可以通过以下步骤实现:
app.use()
方法注册一个中间件函数。req
对象中,使其在控制器中可用。
// app.js
const express = require('express');
const app = express();
// 注入模型和服务的中间件
app.use((req, res, next) => {
// 注入模型
req.models = {
// 模型对象
};
// 注入服务
req.services = {
// 服务对象
};
next();
});
// 其他中间件和路由设置...
app.listen(3000, () => {
console.log('Server started on port 3000');
});
req.models
和req.services
访问注入的模型和服务。
// controllers/exampleController.js
const exampleController = (req, res) => {
// 使用注入的模型和服务
const { Model1, Model2 } = req.models;
const { Service1, Service2 } = req.services;
// 控制器逻辑...
res.send('Example controller');
};
module.exports = exampleController;
通过以上步骤,你可以在使用Express创建Node.js应用时,默认在所有控制器中注入模型和服务。这样可以方便地在控制器中使用模型和服务,实现数据操作和业务逻辑处理。请根据具体需求选择合适的模型和服务,并将其注入到中间件中。
领取专属 10元无门槛券
手把手带您无忧上云