Автор оригинала: Saptak Sengupta.
Вы можете принести модули из разных файлов JavaScript, используя требуемый код JavaScript или Normal Imports Parse Babel. Но код с этими импортами часто становится немного плохое из-за относительного импорта, таких как:
import Component from '../../path/to/Component'
Но лучше, более чистого способа написания импорта ES6
import Component from '~/path/from/jsRoot/Component.js'
Это чрезвычайно избегает плохих относительных путей для импорта в зависимости от того, где являются компонентные файлы. Сейчас это не позволяет самим бабелом. Но вы можете проанализировать это WebPack сам, используя его решить атрибут. Таким образом, ваш WebPack должен иметь эти два сегмента кода:
resolve: { alias: { '~': __dirname + '/path/to/jsRoot', modernizr$: path.resolve(__dirname, '.modernizrrc') }, extensions: ['.js', '.jsx'], modules: ['node_modules'] },
а также
module: { rules: [ { test: /\.jsx?$/, use: [ { loader: 'babel-loader', query: { presets: [ '@babel/preset-react', ['@babel/preset-env', { modules: false }] ], }, } ], }, }
{Модули: false} гарантирует, что предустановка Babel-env не обрабатывает анализа по импорту модуля. Вы можете проверить Следующий комментарий В проблеме WebPack, чтобы узнать больше об этом.