socar-microapps
v2.0.1
Published
注册子应用,接收基座下发的数据,保持于基座通信
Downloads
5
Readme
socar-microapps
注册子应用,接收基座下发的数据,保持于基座通信
/**
* 即 vue vuex
* vuexstore import { createStore } from 'vuex'
*/
import {
store as vuexstore
} from 'vuexstore'
/**
* 开发相关配置
*/
import {
devDepConfig
} from '@/config'
import {
microAppRegister,
generateAppRegister
} from 'socar-microapps'
import {
createApp
} from 'vue'
let app = createApp(App)
const appRegister = generateAppRegister(vuexstore)
microAppRegister({
vuexstore,
dataListener() {
appRegister.register(({
token
}) => {
supplier.updateToken(token)
})
},
appInstall(exchangeTokenHandler) {
/**
* @var {string} 微应用名称
*/
let microAppName = 'microApp'
if (process.env.NODE_ENV === 'development') {
// 开发模式下,非基座独立运行
vuexstore.dispatch('app/ACTION_SET_INIT_STATE', true)
} else {
// 正式
appRegister.register(
({
token,
scope,
resourceScope,
apiUrl,
appId,
appName
}) => {
// 设置数据层启动参数
supplier.setExecuteArgs({
token,
host: apiUrl, // 正式接口地址
exchangeToken: exchangeTokenHandler
})
microAppName = appName
SoCarDomain.registeredScope([...scope], resourceScope)
}
)
}
app.use(vuexstore)
// 初始化后依次挂载
// app.use(router)
// Element.install(app)
// app.use(directives)
app.use(SocarIcon)
console.print.pretty(`微应用 ${microAppName} 初始完成`)
}
})
changelog
2.0.0
破坏性更新, 弃用之前支持qiankun的功能代码,改为使用 microApp。
2.0.1
新增传递 appId
属性数据