Почему при установке каких-либо библиотек требуют, чтобы я скачал через npm или bower?
Доброго времени суток!
Заметил в последнее время, везде, где надо скачать какую-либо библиотечку (angular, react, ember и т.д.), необходимо сначала устанавливать какую-то npm, чтобы он скачал мне, например, react.min.js, angular.min.js и положил в папку node_modules? Зачем столько геморроя? Почему усложнили? Мне было бы проще зайти на оф.сайт, взять оттуда какой-нибудь javascript-библиотеку и через script src="path" загнать в веб-страницу. НО, все бы ничего, если оставили бы выбор. Там уже нет такого способа, простого. Чтобы скачать через npm, в изначальную структуру проекта добавляются какие-то левые каталоги, какой-то packajes.json файл настраивать, какие-то зависимости - просто тихий ужас. Или убедите меня пожалуйста, что менеджер-пакетов мне полезен и нужен. Премного буду благодарен.
на самом деле не было бы вопроса, если бы менеджер пакетов пользовался бы так часто, чтобы уж настолько упростить подключение библиотек и зависимостей. В своих проектах мне приходится подключать библиотеки только пару раз и ради такого простого действия, который мне обошлось бы за 2 минуты, я трачу целую тучу времени на npm.
необходимо сначала устанавливать какую-то npm, чтобы он скачал мне, например, react.min.js, angular.min.js и положил в папку node_modules?
Вообще говоря минимизированные файлы, как правило, можно свободно скачать руками, заходим на github проекта в вкладочку releases, и вытягиваем минифицированный файл.
Зачем столько геморроя? Почему усложнили?
У вас очень своеобразное понятие об геморрое и сложностях. Что бы установить тот же react достаточно выполнить npm i react
Мне было бы проще зайти на оф.сайт, взять оттуда какой-нибудь javascript-библиотеку и через script src="path" загнать в веб-страницу.
Кто запрещает то?)) Заходишь на оф. гитхаб/сайт и качаешь.
Или убедите меня пожалуйста, что менеджер-пакетов мне полезен и нужен.
Да не вопрос, минифицируйте исходники вашего фронта. Только так, что бы этот процесс был автоматизирован, переносим и с максимально простой установкой.
Артём Петренков: Поймёт с небольшой обёрткой. До commonjs модуля нужно создать module.exports, после - сохранить module.eports в словаре, а реализация require просто должна выдавать значения из этого словаря.