javascript — переименование строк чанков в webpack / gatsby

Переименовать строки чёрного сопоставления webpack / gatsby

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

К сожалению, componentChunkName (рассматриваемый путь к шаблону) генерируется Gatsby в createPage и не обрабатывается веб-пакетом.

Код, который генерирует componentChunkName находится здесь: github

Я попытался изменить код следующим образом:

  const { kebabCase } = require(`lodash`) const path = require(`path`)   const uuidv5 = require(`uuid/v5`) const { store } = require(`../redux`) const generateComponentChunkName = componentPath ={amp}gt; { const program = store.getState().program let directory = `/` if (program {amp}amp;{amp}amp; program.directory) { directory = program.directory } const name = path.relative(directory, componentPath) - return `component---${kebabCase(name)}`   return process.env.NODE_ENV === `production`   ? `component---${uuidv5(name, uuidv5.URL)}`   : `component---${kebabCase(name)}` } exports.generateComponentChunkName = generateComponentChunkName 

Это успешно скрывает все имена компонентов в производственной сборке:

 app: Array [ "/app-e593b3d93932ed3a0363.js" ] "component---11d478fe-6a55-579c-becf-625ab1e57cf4": Array [ "/component---11d478fe-6a55-579c-becf-625ab1e57cf4-76c90ae50035c52657a0.js" ] "component---15c76861-b723-5e0a-823c-b6832aeeb0a0": Array [ "/component---15c76861-b723-5e0a-823c-b6832aeeb0a0-18eb457ba6c147e1b31b.js" ] ... 

Ни один из локальных модульных тестов не прошел, мой тест «щелчок по кругу, пока что-то не сломался» также не дал никаких ошибок. Я мог бы представить PR позже сегодня, чтобы увидеть, есть ли у сопровождающих некоторое представление о том, почему это не очень хорошая идея.

Изменить : вместо этого я открыл проблему: github , вы можете подписаться на проблему, чтобы увидеть, как она решается.

Понравилась статья? Поделиться с друзьями:
JavaScript & TypeScript
Adblock
detector