背景
我们做的是后台类型的管理系统,因此相对应的表单就会很多。
相信做过类似项目的老哥懂得都懂。
因此我们希望能够通过一些相对简单的配置方式生成表单,不再需要写一大堆的组件。
尽量通过数据驱动。
思路
不管是哪个平台,思路都是相通的。
1.基于UI框架封装
react我们基于antd封装。
vue我们基于element封装。
记录一些我碰到的入门问题
| 1 | npx create-react-app app-name --template typescript | 
| 1 | yarn add eslint --dev | 
选项如下:
| 1 | ? How would you like to use ESLint? … | 
npm下载完成以后,删掉package-lock.json,重新使用yarn去加载依赖
接着,以为已经使用airbnb规则,万事大吉
但是你会发现特别多奇奇怪怪的错误,比如
部署也是根据不同的路由模式进行不同情况部署
假设主应用和子应用使用相同模式的路由
不是说使用不同路由不行,而是没那个必要去增加复杂性
我们以本机模拟服务器部署情况

如上图,我打包好了两份代码,分别位于deploy和deployhash文件夹
deploy文件夹内放置的是history模式的产物
deployhash文件夹内放置的是hash模式的产物
两个文件夹内的文件结构是一模一样的,这个图我们叫它图1,等哈记得回头来看
开发环境可以利用控制台调试,看网络请求啊乱七八糟的。但是打包以后就没办法看了。
其实主要打开控制台的关键语句就是
| 1 | window.webContents.openDevTools() | 
那我们需要设置一个不常用的快捷键,避免误触来打开控制台
| 1 | import {globalShortcut} from 'electron'; | 
即可
其实严格来说,这不是qiankun的问题,是vue-router4.x的问题。
解决方案:history模式使用window.history跳转,hash模式主应用添加hashchange事件发送
详情见issues1280
子应用包含多个script,其中有些是公共方法,其他js使用的时候提示找不到方法
解决方案:需要显式挂载到window
详情见issues1272
使用css选择器为qiankun添加的div加样式