私の代理店の同僚がNode.jsをピックアップしただけで、1つの機能を1つの機能にまとめれば複数のファイルを持つよりも優れています。例:複数のアップデートに1台のルータを使用して各モデルのコントローラをファイルに分割する
app.post('api/v1/:model/create', (req, res, next) {
let modelName = req.params['model'];
SCHEMAS[modelName].create(req.body, (err, model) => {});
});
だから、すべてのPOSTリクエストは、それが(マングース経由)のMongoDBにオブジェクトを格納し、この一つの機能に入ります。 delete、put、getの場合も同様です。
は私が通常行うことである。
/models/website/page.js
app.post('/api/v1/pages/', (req, res, next) => {/* Store object to database here */});
app.delete('/api/v1/pages/:pageId', (req, res, next) => {/* Delete object from database here */});
/models/website/navigation.js
app.post('/api/v1/navigation/', (req, res, next) => {/* Store object to database here */});
app.delete('/api/v1/navigation/:navigationId', (req, res, next) => {/* Deletes object from database here */});
などなどなど、あなたのアイデアを得ます。また、それぞれのファイルは、私のメソッドで、対応するモデルのコントローラを取得、ポスト、プット、および削除しています。
あなたは私にこの練習を教えてもらえますか?どちらがより良いアプローチですか?
は、私は簡単にするために私の例ではそれを残しました。私は各URLセグメントのコントローラのグループが必要です。したがって、 '/ api、require( 'apiRoutes')'、 'apiRoutes'、'/v1、require( 'v1Routes')などのようになります。 – borislemke