#javascript #node.js
#javascript #node.js
Вопрос:
Я новичок в Node, поэтому, вероятно, из-за моего невежества я делаю что-то другое, чем я думаю. По той же причине я не увидел ничего полезного, когда погуглил проблему.
Когда я запускаю свою страницу следующим образом
узел app/index.js
он работает и отображает правильный текст в браузере, когда я направляюсь к localhost: 3001. Затем я попытался указать в файле JSON путь следующим образом
«start»: «app/index.js «, …
и выполнение узла без каких-либо аргументов. Я понимаю, что, поскольку аргументы не указаны, программа должна искать что-либо в файле конфигурации.
Я заметил, что когда я указываю путь явно, я ничего не получаю в консоли, и она «зависает». Но когда я использую только узел, появляется скобка, как если бы он чего-то ждал. Хотя понятия не имею, что…
По какой-то причине этого не происходит, и страница не может быть показана. Что я могу с этим поделать?
Ответ №1:
start
команда в вашем package.json
файле должна выглядеть примерно так — "start": "node app/index.js"
. И затем, чтобы запустить его, вам нужно выполнить npm start
. node
команда без параметров просто помечает node-repl. Подробнее о npm и package.json
в npmjs.
main
Параметр в вашем package.json
используется в качестве точки входа в ваш пакет. Для запуска разных скриптов вам следует использовать node [path_to_script]
.
Поле main — это идентификатор модуля, который является основной точкой входа в вашу программу. То есть, если ваш пакет называется foo, и пользователь устанавливает его, а затем требует («foo»), тогда будет возвращен объект экспорта вашего основного модуля.
Комментарии:
1. Вы абсолютно правы. Я имел в виду, однако, спросить о main , а не о start . Так сказано в названии, но в вопросе, который я вставил неправильно. Извините за путаницу — я очень новичок во всем этом. Хотите еще раз взглянуть на это, пожалуйста?
2. Как я знаю,
nodemon
без параметров выполняетсяmain
файл, но я не думаю, что это то, что вы ищете.3. Я запустил ее в PowerShell, но команда не была распознана. Возможно, это потому, что я на Windows 10. Или, может быть, я просто неправильно понимаю смысл main . Вы хотите сказать, что правильный способ запустить мое веб-приложение (на локальном хосте) — это выполнить npm start ?
4. ДА. Укажите команду в package.json
..."start": "node app/index.js"...
, а затем просто запуститеnpm start
.5. Потрясающая информация. Мне это кажется настолько нелогичным, потому что NPM — это просто менеджер пакетов, и это узел, который должен запускать приложение. Конечно, я вижу, как он выполняет путь к узлу , но это похоже на переход через реку за водой, хе-хе. Ответ принят.