我认为自己足够胜任nodeJs。我最近决定通过开始使用Typescript进行开发来更改我的应用程序。最近,我看到许多博客(like this one)创建RESTful API时,它们将所有模块以及应用程序的所有入口点包装在一个类中。是正确的还是我可以像以前一样继续使用打字稿来开发我的应用?
答案 0 :(得分:3)
这是样式问题,而不是其他任何问题。但是Express并未为其单位推广OOP,将应用定义为类并没有明显的好处:
class App {
public app: express.Application;
constructor() {
this.app = express();
this.config();
}
private config(): void{
// support application/json type post data
this.app.use(bodyParser.json());
//support application/x-www-form-urlencoded post data
this.app.use(bodyParser.urlencoded({ extended: false }));
}
}
export default new App().app;
App
是一个单例,不应重用。它并没有提供类众所周知的任何好处,例如可重用性或可测试性。这是不必要的复杂版本:
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
export default app;