1. ホーム
  2. javascript

[解決済み] express.jsのアプリケーションはどのように構成すればよいのでしょうか?

2022-12-31 02:10:25

質問

を分割してモジュール化するための共通の規約はありますか? app.js ファイルを Express.js アプリケーションで使用できますか?それとも、すべてを 1 つのファイルに保存するのが一般的ですか?

どのように解決するのですか?

私の場合、以下のように分割しています。

~/app
|~controllers
| |-monkey.js
| |-zoo.js
|~models
| |-monkey.js
| |-zoo.js
|~views
| |~zoos
|   |-new.jade
|   |-_form.jade
|~test
|  |~controllers
|    |-zoo.js
|  |~models
|    |-zoo.js
|-index.js

私は関連するものを返すためにExportsを使用しています。例えば、私がやっているモデルで

module.exports = mongoose.model('PhoneNumber', PhoneNumberSchema);

というように、電話番号を作成する必要があれば、簡単です。

var PhoneNumber = require('../models/phoneNumber');
var phoneNumber = new PhoneNumber();

スキーマを使う必要がある場合は PhoneNumber.schema

(これは routes フォルダから作業していると仮定し、1 レベル上に移動し、models に移動する必要があります)


編集 4

その express wiki には、その上に構築されたフレームワークのリストがあります。

その中でも、Twitterの マタドール はかなりうまく構成されていますね。私たちは実際に、アプリの一部を読み込む方法と非常によく似たアプローチを使用しました。

derby.js も非常に面白そうです。似たようなもので 流星 に似ていて、誇大広告がなく、実際に信用を与えるべきところ(特に、node と express)では信用を与えるものです。


編集 3

CoffeeScriptのファンで(私はそうではありませんが)、RailsのL&Fがどうしても欲しいという方には、次のようなものもあります。 タワー.js .


編集2

Railsに慣れていて、いくつかの概念のブリードオーバーを気にしないのであれば、次のものがあります。 機関車 . Expressをベースにした軽量なフレームワークです。RoRと非常によく似た構造を持っており、より初歩的なコンセプト(ルーティングなど)を引き継いでいます。

使う予定がなくても、チェックする価値はあります。


EDIT 1

nodejs-express-mongoose-demo は、私の構成と非常によく似ています。見てみてください。