想给开源社区贡献点代码(遇到bug了)
文档启动
1 | git clone |
代码改动
1 | git clone |
/website/play
下新建一个index.vue
填写调试代码
1 | yarn website-dev:play |
完毕
记录一些我碰到的入门问题
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加样式