Как устроен webpack, gulp, grunt, node, а точнее обращение к конфиг-файлам?
Как устроен webpack, gulp, grunt, node, а точнее обращение к конфиг-файлам? Вот есть разные там gulpfile.js , webpack.config.js , Gruntfile.js , package.json . И как все таки это устроено? Как эти модули могут достучаться до этих файлов? Как они к ним обращаются??
Я думаю для "webpack, gulp, grunt" - модуль fs (вы же можете в своем node.js скриптике обратиться к файлам на вашем компьютере).
Для node - нужно гуглить уже на уровень глубже и смотреть как этот модуль fs написан.
Окей, во ситуация - в проекте есть папка node_modules и где-то в корне еще лежит webpack.config.js, но ведь из всего дерева зависимости fs не может знать наверняка где будет этот файлик( или все же знает? ). Есть ли способ обратиться к файлу не зная абсолютного пути?
TobiraSoe: Есть ли способ обратиться к файлу не зная абсолютного пути? - обратить "относительно". Для webpack'a есть требование, класть webpack.config.js в корень проекта, значит разработчик модуля мог смело его найти по относительному пути из папки node_modules
Я рылся в исходниках, и понял, что это задача модуля cli, но я с ним еще не разобрался, и даже когда мы ставим глобально вебпак, мы запускаем бандл, но все равно он находит наш конфиг, и дело скорее всего в том, что мы берем путь дериктории откуда запускаем бандл, и дальше cli передает конфиг уже вебпаку.