Um projeto com vários arquivos package.json
Sou relativamente novo no desenvolvimento moderno de JS e preciso de ajuda ou aconselhamento sobre esta situação em que estou.
Situação: Temos um projeto React-Typescript-Redux suportando o IE8 (React 0.14). Agora estamos atualizando para o IE11 e React 16, mas o IE8 deve ser suportado.
Requerimento: Reduza a manutenção do projeto entre as versões do navegador usando pacotes diferentes e / ou arquivos de configuração para cada compilação.
Problema: Com base nas pesquisas que fiz até agora, parece impossível usar diferentes arquivos package.json e pastas node_modules dentro do mesmo projeto com as ferramentas selecionadas: npm, Webpack, React, Redux, Typescript. O Yarn parece suportar vários arquivos package.json, mas gostaríamos de evitar a migração do npm, se possível.
Estrutura atual do projeto:
project_root/
node_modules/
src/
components/
utils/
index.tsx
components.css
index.html
package.json
tsconfig.json
webpack.config.json
O que eu pensei que poderia funcionar era apresentar a subpasta IE8 com sua pasta package.json e node_modules e, em seguida, referenciar essa pasta para a tarefa de compilação de alguma forma, mas agora não sei como dizer ao npm para referenciá-la na compilação.
Estrutura do projeto proposto:
project_root/
ie8/
node_modules/
package.json
node_modules/
src/
components/
utils/
index.tsx
components.css
index.html
package.json
tsconfig.json
webpack.config.json
Eu tentei coisas diferentes encontradas na web, incluindoresolve.modules: [__dirname + "/ie8/node_modules"]
mas parece que não funciona ou entendo mal o que faz porque receboCannot find name 'require'
erros em vários arquivos e o TypeScript 2.8.3 é referenciado na saída do terminal. 2.3.4. Sem ele, o projeto é construído com a configuração do IE11.
Então, alguém pode me dizer com certeza que não é possível ou oferecer alguma orientação?este é a resposta mais próxima que encontrei até agora, mas não parece final. Como alternativa, uma estrutura de projeto como essa suporta o que é necessário ou separar o projeto em dois é a melhor aposta?
Desde já, obrigado.