Sailsは利便性のために、いくつかのグローバル変数を提供しています。デフォルトでは、アプリのモデル、サービス、そしてグローバルなsailsオブジェクトがすべてグローバルスコープで利用可能です。つまり、Sailsがロード済みであれば、バックエンドコードのどこからでも名前で参照できます。
Sailsコアでは、これらのグローバル変数に依存しているものはありません。Sailsで公開されているすべてのグローバル変数は、sails.config.globals(慣例的にconfig/globals.jsで設定)で無効にできます。
sails)ほとんどの場合、sailsオブジェクトはアプリのコードをよりクリーンにするため、グローバルにアクセス可能にしておきたいでしょう。ただし、sailsを含む_すべての_グローバル変数を無効にする必要がある場合は、リクエストオブジェクト(req)からsailsにアクセスできます。
アプリのモデルとサービスは、それぞれのglobalIdを使用してグローバル変数として公開されます。たとえば、api/models/Foo.jsファイルで定義されたモデルはFooとしてグローバルにアクセス可能になり、api/services/Baz.jsで定義されたサービスはBazとして利用可能になります。
async) と Lodash (_)Sailsはまた、lodashのインスタンスを_として、asyncのインスタンスをasyncとして公開します。これらのよく使われるユーティリティは、新しいプロジェクトごとにnpm installする必要がないように、デフォルトで提供されています。Sailsの他のグローバル変数と同様に、これらも無効にできます。