Как изменить путь импорта при переносе с Babel? - PullRequest
0 голосов
/ 04 ноября 2019

У меня есть эта структура проекта с файлами, которые мне нужно передать перед развертыванием в производство.

srcApp (FOLDER)
  Component1.js // WRITTEN IN ES6
srcFunctions (FOLDER)
  Function1.js  // WRITTEN IN ES6

И мы получаем это:

Function1.js

import Component1 from '../srcApp/Component1';

function Function1() {
  // DO SOMETHING
  // RETURN SOMETHING
}

export default Function1;

Component1.js

import React from 'react';

function Component1() {
  // RETURN SOMETHING
}

Что мне нужно:

Мне нужно перенести оба файла с помощью Babel.

И мне нужно отправить их по адресу:

distApp (FOLDER)
  Component1.js // THIS IS THE TRANSPILED VERSION
distFunctions (FOLDER)
  Function1.js // THIS IS THE TRANSPILED VERSION

Но теперь импорт из Function1.js исходного файла должен быть перенесен в:

import Component1 from '../srcApp/Component1';

// THE IMPORT ABOVE SHOULD BECOME A 'REQUIRE' IN THE TRANSPILED FILE

const Component1 = require('../distApp/Component1');

ВОПРОС

Полученный require должен потребовать из папки, отличной от import перед переносом. Импорт был из srcApp, а требование должно быть из distApp.

Есть ли способ достичь этого во время транспортировки с Вавилоном? Должен ли я изменить структуру моего проекта, чтобы сделать ее проще?

ПЛАН B

Транспортировать пути к файлам, ничего не меняя, и запускать скрипт после переноса, чтобы заменить текст непосредственно в передаваемые файлы,Это хороший вариант или я могу сделать это только с babel?

...