Как сделать так, чтобы node.js выполнял некоторый код только в том случае, если мой файл является запущенным файлом? - PullRequest
7 голосов
/ 09 декабря 2011

Я хочу иметь возможность запускать мой экспресс-сервер напрямую через:

$ node app.js

Но я также хочу иметь возможность запрашивать этот файл и возвращать экземпляр приложения, но фактически не запускать сервер.Затем я могу запустить его позже с некоторыми опциями.

app = require './app'
app.listen options.someCustomPort

Я в основном ищу эквивалент этого фрагмента ruby, но в файле node.js.

if __FILE__ == $0
  app.listen options[:some_custom_port]
end

Есть лиидиома для этого?

1 Ответ

8 голосов
/ 09 декабря 2011

Отметьте

module.parent

Если это null или undefined, вы - основной файл.Если нет, вы были require d.Ваш module.parent является module объектом модуля, который require d вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...