Мы пытаемся создать приложение с микро-фронтами, мы хотели бы запустить каждое микро-приложение (созданное с помощью CRA)
npm run build
поверх этого приложения возьмите созданную папку / build, сделайте из нее пакет npm и опубликуйте его в нашем репозитории npm.
Мы не хотим создавать проекты приложений, чтобы иметь возможность редактировать webpack.config.
Мы предпочитаем взять / build и снова передать его через веб-пакет (даже в другом проекте), чтобы получить выходные данные, которые можно использовать в качестве пакета npm, которые можно правильно опубликовать и импортировать в новый проект.
Я пытаюсь сделать это, взяв папку / build и запустив ее через веб-пакет с такой конфигурацией:
const path = require("path");
const UglifyJsPlugin = require("uglifyjs-webpack-plugin");
const glob = require("glob");
module.exports = {
entry: {
"bundle.js": glob
.sync("build/static/?(js|css)/main.*.?(js|css)")
.map(f => path.resolve(__dirname, f))
},
output: {
filename: "build/static/js/bundle.min.js",
libraryTarget: "commonjs2"
},
module: {
rules: [
{
test: /\.css$/,
use: ["style-loader", "css-loader"]
}
]
},
plugins: [new UglifyJsPlugin()],
resolve: {
alias: {
src: path.join(__dirname, "./src")
}
},
externals: {
react: "commonjs react"
}
};
Результатом является один JS. после публикации в npm, я пытаюсь импортировать его и получаю много ошибок, таких как:
Мне кажется, что-то отсутствует в моем webpack.config или, может быть, есть другой способ взять папку all / build и объединить ее с чем-то, что можно опубликовать в виде пакета npm и правильно импортировать?
Любая помощь будет очень ценится!
Спасибо!