При отключении глобальных переменных документы предлагают использовать следующие альтернативы:
Будут ли какие-либо проблемы, требующие "паруса", "услуги" и "модели", как и любой другой модуль?
Пробовав его, он действительно работает, однако я чувствую, что, возможно, что-то не хватает.
Использование require
для сервисов всегда актуально; глобализация просто для удобства.
С другой стороны, выполнение require('api/models/User.js')
почти наверняка не даст вам то, что вы хотите, поскольку эти файлы используются Sails для создания классов моделей. Таким образом, единственный способ надежно использовать модели в Sails без включения глобальных sails.models
- это использовать sails.models
.
Наконец, в то время как require('sails')
обычно дает вам ссылку на приложение Sails, не рекомендуется использовать его таким образом. Если вы запускали несколько приложений Sails в одном и том же процессе (что вы могли бы сделать в автоматизированных тестах), то он не надежно вернул бы правильное приложение. Вам гораздо лучше использовать req._sails
в контроллерах, и this.sails
в моделях и сервисах.
this.sails
способ сделать это, но этотthis.sails
точно безопасен. Re: документация, хороший звонок, будет смотреть на это.