import zhCN from 'ant-design-vue/es/locale-provider/zh_CN' import store from '@/common/store' import { loginPromise } from './styleguide' import SdWebflowPanel from '@/webflow/sd-webflow-panel.vue' import flowService from '@/webflow/flow-service' export default (previewComponent) => { return { store, components: { previewComponentWait: function(resolve, reject) { // 等待登录成功,vuex信息都已经获取后再渲染组件 loginPromise.finally(() => { let component = previewComponent resolve({ render(createElement) { return ( ) }, created() { if (previewComponent.isFlowFormExample) { // 如果是流程样例,注册写死的表单ID,并用SdWebflowPanel显示 flowService.addFlowForm( 'vue:doc/flowFormExample' + previewComponent._scopeId, previewComponent ) // 把当前实例的id传递到route param const createdOri = SdWebflowPanel.created component = { ...SdWebflowPanel, created() { this.$route = { fullPath: '/sd-webflow/pages/draft/404', hash: '', params: { type: 'pages', mode: 'draft', id: '404', scopeId: previewComponent._scopeId, }, path: '/sd-webflow/pages/draft/404', query: {}, } createdOri.apply(this) }, } } }, }) }) }, }, render(createElement) { return }, } }