webpack Federation
In producer:
js
{plugins: [new ModuleFederationPlugin({name: "producer",filename: "remoteEntry.js",remotes: {},exposes: {'./pathExposed': './src/pathInThisProject'},shared: require("./package.json").dependencies,}),],}
js
{plugins: [new ModuleFederationPlugin({name: "producer",filename: "remoteEntry.js",remotes: {},exposes: {'./pathExposed': './src/pathInThisProject'},shared: require("./package.json").dependencies,}),],}
In consumer:
js
{plugins: [new ModuleFederationPlugin({name: "starter",filename: "remoteEntry.js",remotes: {remoteLib: 'producer@http://producer-url.com/remoteEntry.js',},shared: require("./package.json").dependencies,}),],}
js
{plugins: [new ModuleFederationPlugin({name: "starter",filename: "remoteEntry.js",remotes: {remoteLib: 'producer@http://producer-url.com/remoteEntry.js',},shared: require("./package.json").dependencies,}),],}
In consumer code:
js
import remoteCode from 'remoteLib/pathExposed';
js
import remoteCode from 'remoteLib/pathExposed';