58 lines
2.0 KiB
JavaScript
58 lines
2.0 KiB
JavaScript
|
const vue2Plugin = require('@gcbp/gcp-cli-plugin-vue2')
|
|||
|
const { defineConfig } = require('@gcbp/gcp-cli')
|
|||
|
const { version } = require('./package.json')
|
|||
|
const buildLocalesPlugin = require('./build/plugins/buildLocales')
|
|||
|
|
|||
|
// 修改库名为智慧工地相关
|
|||
|
const name = 'SmartConstructionWidgetsWeb'
|
|||
|
// 修改为智慧工地的CDN域名
|
|||
|
const cdnBaseUrl = 'https://cdn.smartconstruction.com'
|
|||
|
const port = 9099 // 本地调试端口
|
|||
|
// 开发框架版本
|
|||
|
|
|||
|
module.exports = defineConfig(({ mode, env }) => {
|
|||
|
const host = mode === 'development' ? `http://localhost:${port}` : cdnBaseUrl
|
|||
|
const libVersion = mode === 'development' ? 'latest' : version
|
|||
|
const publicPath = `${host}/smart-construction/widgets/${libVersion}/`
|
|||
|
|
|||
|
return {
|
|||
|
plugins: [vue2Plugin, buildLocalesPlugin],
|
|||
|
appEntry: 'index.js',
|
|||
|
server: {
|
|||
|
port
|
|||
|
},
|
|||
|
html: { title: 'Web Business Widgets' },
|
|||
|
build: {
|
|||
|
target: 'es5',
|
|||
|
devVersion: env === 'dev'
|
|||
|
},
|
|||
|
base: publicPath,
|
|||
|
gcpShare: {
|
|||
|
name,
|
|||
|
// 有exposes输出时必选:输出模块的打包类型,用于兼容微前端的JS沙箱
|
|||
|
library: {
|
|||
|
name,
|
|||
|
type: 'umd'
|
|||
|
},
|
|||
|
remoteType: 'script', // 有exposes输出时必选:远程库服务引用类型
|
|||
|
// 导出配置;删除示例控件后,需同时删除导出
|
|||
|
exposes: {
|
|||
|
'./basic/RealTimeData': './src/widgets/basic/RealTimeData.vue'
|
|||
|
},
|
|||
|
remotes: {
|
|||
|
// 开发框架库引用;使用框架最新稳定版本
|
|||
|
'@gcbp/web-framework': `promise GcpCliAsyncRemotesConfig.getByName('GCPWebFramework')`
|
|||
|
},
|
|||
|
shareLib: {
|
|||
|
vue: `Vue@${cdnBaseUrl}/vendors/vue/2.6.14/vue.min.js`,
|
|||
|
vuex: `Vuex@${cdnBaseUrl}/vendors/vuex/3.6.2/vuex.min.js`,
|
|||
|
// 基础组件库引用;默认使用latest最新版,可修改为固定版本更加稳定
|
|||
|
'@geip/basic-components': [
|
|||
|
`GCPDesignPro@${cdnBaseUrl}/gcp/gcp-design-pro/latest/index.js`,
|
|||
|
`${cdnBaseUrl}/gcp/gcp-design-pro/latest/theme-default/index.css`
|
|||
|
]
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
})
|