# 使用wpm组件库
配置指南
- 微盟微前端项目不改业务代码切换wpm组件库指南
- 配置webpack插件
yarn add import-wpm-webpack-plugin -D
1
微前端脚手架webpack配置文件
- saas-fe-kraken-react-kit 脚手架对应配置文件 kit.config.js
- sparrow-kraken-ng-vue-kit 脚手架对应配置文件 webpack.config.js
const ImportWpm = require("import-wpm-webpack-plugin")
const packageJson = require("./package.json")
module.exports = {
plugins: [
new ImportWpm({
init: {
env: "online" || "qa",
// 运行时, 生效于所有运行时的代码, 生效于所有依赖(包括间接依赖)
// 通常用于设置依赖信息, 例如 vue: "vue@0.1?xxx=1", react@0.1: "react@1.0"
map: {
"@core-klein/basic-multiple": `@core-klein/basic-multiple?cssScope=.${packageJson.name}`,
"@wemo-ui/klein": `@wemo-ui/klein?cssScope=.${packageJson.name}`,
"@core-klein/container": `@core-klein/container?cssScope=.${packageJson.name}`,
},
},
alias: {
react: "wpm:react",
"react-dom": "wpm:react-dom",
"@wemo-ui/klein": "wpm:@wemo-ui/klein",
"@core-klein/container": "wpm:@core-klein/container",
},
singleWarningPattern: /\.[jt]sx?$/
})
]
}
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
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
- 删除babel-plugin-import(第4行)
// babel.config.js
module.exports = {
plugins: [
// ["import", {
// libraryName: "@wemo-ui/klein",
// libraryDirectory: "es",
// style: true,
// }, "@wemo-ui/klein"],
],
sourceType: "unambiguous",
}
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
- 使用 wpmjs/$/@core-klein/basic-multiple (opens new window) 代替 @core-klein/basic