-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwebpack.config.js
More file actions
45 lines (43 loc) · 1.23 KB
/
webpack.config.js
File metadata and controls
45 lines (43 loc) · 1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
const HtmlWebpackPlugin = require("html-webpack-plugin")
const { ModuleFederationPlugin } = require("webpack").container
const path = require("path")
const { dependencies } = require('./package.json')
module.exports = {
entry: "./src/index",
mode: "development",
devServer: { port: 3001, historyApiFallback: true },
output: { publicPath: "auto" },
devtool: "eval-cheap-source-map",
module: {
rules: [{
test: /\.jsx?$/,
loader: "babel-loader",
exclude: /node_modules/,
options: { presets: ["@babel/preset-react"] }
}, {
test: /\.css$/,
use: ["style-loader", "css-loader"]
}]
},
plugins: [
new HtmlWebpackPlugin({ template: "./public/index.html" }),
new ModuleFederationPlugin({
name: "platform",
remotes: { plugins: "plugins@http://localhost:3002/remoteEntry.js" },
shared: [{
...dependencies,
react: {
singleton: true,
requiredVersion: dependencies.react
},
'react-dom': { singleton: true },
'react-router-dom': { singleton: true },
'@apollo/client': { singleton: true },
graphql: {
singleton: true,
requiredVersion: dependencies.graphql
},
}]
})
]
}