Потребовалось некоторое время, чтобы понять это, но я обнаружил, что Netlify делает npm install
в корневой каталог репо или Базовый каталог , когда у вас есть package.json
.Это можно увидеть, изменив команду Build на что-то вроде ls
и прочитав вывод консоли развертывания (в списке будет папка node_modules
).
Однако в какой-то моментпосле выполнения команды Build и перед развертыванием этот node_modules
удаляется.Следовательно, если вы используете нечто подобное следующему в качестве команды построения , node_modules
можно скопировать в ваш каталог публикации :
rm -rf dist && mkdir dist && rsync -rv * dist --exclude ./dist
Это копирует Базовый каталог содержимого в dist
, который я установил в качестве Публикация каталога , игнорируя сам ./dist
(его нельзя скопировать в себя).Было бы еще лучше, если бы он был добавлен в виде сценария npm в package.json
с npm run <script name>
для вашей команды сборки .
Обратите внимание, что Base directory , Команда построения и Каталог публикации находятся в Развертывание> Настройки развертывания или Настройки> Сборка и развертывание в Netlify.
Спасибо lastmjs за помощь в выяснении этого.