Sailsコアは、保守と拡張を容易にするために、数回にわたって反復されてきました。その結果、非常に特定の読み込み順序があり、その順序にフックが大きく依存しています。このプロセスを以下にまとめます。
コマンドライン、環境変数、およびプログラムによる設定(つまり、sails.loadまたはsails.liftに渡されるオプション)で渡される設定値のセットを収集します。コマンドラインインターフェース(sails liftまたはsails consoleと入力)を介してアプリが起動されると、.sailsrcファイルの任意の値も設定オーバーライドにマージされます。これらのオーバーライド値は、次のステップで検出されたユーザー設定よりも優先されます。
userconfigurationフックが明示的に無効にされていない限り、Sailsは次に、現在の作業ディレクトリの下にあるconfigフォルダ(およびサブフォルダ)にある設定ファイルを読み込みます。ユーザー設定の詳細については、概念 > 設定を参照してください。ステップ1の設定設定はこれらの値の上にマージされ、sails.configオブジェクトを形成します。
次に、Sailsは他のフックを読み込みます。コアフックが最初に読み込まれ、次にユーザーフックとインストール可能なフックが読み込まれます。フックには通常、sails.configでデフォルト値として使用される独自の設定が含まれていることに注意してください。たとえば、この時点でport設定が構成されていない場合、httpフックのデフォルト値である1337が使用されます。
Sailsはコアルーターを準備し、次にフックが安全にルートをバインドできることを通知する複数のイベントをsailsオブジェクトで発行します。
すべてのフックが初期化された後、Sailsはグローバル変数(デフォルト:sailsオブジェクト、モデル、サービス、_、およびasync)を公開します。
sails.load()がプログラムで使用されている場合、このステップは実行されません。初期化ステップを実行するには、代わりにsails.lift()を使用します。
sails.config.bootstrap)を実行するsails.lift()とsails.load()の違いは何ですか?lift() === load() + initialize()。load()が行うすべてを実行し、さらに接続されたサーバー(例:HTTP)を起動し、ボートの絵をログに記録します。