Я новичок в nodejs. Я установил nodejs в моей системе Windows 8. Путь C:\Program Files\nodejs. Я хочу установить модуль Mysql для nodejs, но когда я набираю команду в поиске. Отображаются две командные строки:

1 командная строка
2 nodejs Командная строка.

Когда я открываю 1 и набираю npm, установите mysql, это выдает мне ошибку. Но когда я нажимаю на 2, оболочка открывается. После этого я набираю команду npm install mysql. Он установил модуль mysql, но в другом месте C:\Users\user\node_modules. Вот почему я запутался, как mysql будет работать, потому что оба пути разные. Пожалуйста, помогите мне в установке mysql с помощью nodejs.

2 ответа2

2

Небольшая проверка покажет вам разницу - щелкните правой кнопкой мыши по любой ссылке, свойствам и посмотрите, что там написано. Первый - это простая ванильная командная строка. Глядя на последнее, он запускает файл с именем nodevars.bat, который гарантирует, что ваши node.js и npm будут первыми в пути (и другие вещи. ЧИТАЙТЕ ЭТО!). Это гарантирует, что команды node.js, такие как npm, будут работать без полного пути. При запуске проектов node.js всегда используйте последнюю ссылку

Свойства моей командной строки node.js выглядит следующим образом

введите описание ссылки здесь

Проверьте файл nodevars.bat, и вы найдете

rem Если мы находимся в каталоге node.js, перейдите в домашний каталог пользователя. if "% CD%\" == "% ~ dp0" cd /d "% HOMEDRIVE %% HOMEPATH%"

Вот как будет работать модуль в /users /. Ты уже там.

Тем не менее, вы установили модуль node.js для использования mysql. Вам все еще нужно будет установить правильную копию mysql - установщик находится здесь, и правильно настроенный файл node.js будет использовать его. Я считаю, что модуль должен делать это автоматически

Этот вопрос стоит прочитать - вы пытаетесь сделать то, о чем говорит fmsf.

Замечу, что никогда раньше не кодировал вместе mysql и node.js. Однако большинство из этих вещей общедоступны, и несколько быстрых поисков в Google должны помочь вам, а также немного любопытства. Не просто код. ГРОК!

0

Здесь следует отметить несколько вещей: вы можете устанавливать пакеты локально или глобально, например, если вы хотите использовать mysql в качестве общесистемного приложения, вы можете использовать npm install -g mysql . Не все модули работают таким образом, но важно отметить это.

Мне кажется, вы пытаетесь установить mysql локально, но вы (из того, что я видел в вашем посте) в неправильном каталоге.

Другими словами - если вы хотите выполнить локальную установку, вы можете сделать то же самое, что и раньше, но из каталога проекта.

Вот пример того, как я мог бы установить mysql как зависимость от нового проекта, над которым я еще не работал (без особых подробностей, таких как использование git и тому подобное):

  1. Откройте терминал, проверьте, в каком каталоге я нахожусь и что происходит через ls (dir в случае терминала Windows);
  2. Создать каталог для моего проекта mkdir ./Whatever (опять же в Windows это, вероятно, будет mkdir .\whatever);
  3. Затем я бы переписал (/ WINDOWS: cd ./whatever chdir .\whatever) в мой каталог;

Тогда я смогу установить материал для этого проекта.

В этот момент я могу сделать что-то вроде npm install mysql --save который не только установит модуль mysql в ./node_modules (внутри директории, в которой я нахожусь), но и запомню это в моем package.json

Кстати, я думаю, что вы можете попробовать npm init в образовательных целях, чтобы овладеть некоторыми вещами, такими как package.json , что очень важно для nodejs.

Не бойтесь что-нибудь испортить, если вы работаете в какой-то директории, вы можете легко от нее избавиться.

Короче говоря: не используйте npm install stuff нигде, это не pip install python - вместо этого перейдите в намеченный каталог. И проверьте каталоги, в которых вы уже были, возможно, они полны непреднамеренных node_modules (или других).

Также может быть полезно проверить вашу переменную% PATH% и общесистемную среду. переменные, потому что те имеют тенденцию иногда забиваться.

PS

Возможно, я не согласен с некоторыми из предоставленных команд Windows, прежде чем пытаться их использовать, проверьте правильность этих команд.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .