Если главное поле в файле package.json необходимо для указания точки входа пакетов, то почему мы включаем это поле в package.json в корне приложения узла. Считает ли nodejs наше приложение node как пакет или модуль?
Зачем нам нужно свойство main в package.json в корне приложения узла, если оно предназначено для указания пакетов и точки входа модуля?
comment
что вы подразумеваете под точкой входа? он просто сообщает, какая зависимость у ваших приложений от других модулей, как запустить приложение, как тестировать приложение, а также детали приложения, такие как имя, версия и т. д.
- person xan_z   schedule 31.10.2018
Ответы (1)
Хорошая практика - указать правильную точку входа. Используется при разрешении модулей. То, что вы называете «приложением», на самом деле является пакетом Node. В какой-то момент он может использоваться как таковой, например как субприложение внутри другого приложения.
Обычный случай, когда это применимо, - это тестирование, куда следует импортировать корневой модуль:
test / app.spec.js
const appInstance = require('..');
person
Estus Flask
schedule
31.10.2018
на самом деле я создаю приложение в nodejs, используя экспресс и в корневой папке приложения, у меня есть этот package.json, который, очевидно, хранит сведения о моем приложении и зависимостях, но я не понимаю, почему эта запись main: index.js здесь. Какой смысл помещать это туда?
- person mohit kaushik; 01.11.2018
index.js
- значение по умолчанию для поля main
. Его можно не указывать, но он используется вместо настраиваемого значения. Вот как выглядит package.json, когда он создается с нуля с помощью npm init
.
- person Estus Flask; 01.11.2018