-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Task] qiankun webpack 插件 #2678
Comments
@nayonglin 确认领取的话,这里先写一个 RFC? |
没问题,本周内搞定,我这两天先熟悉一下3.0的源码 |
1、2、3跟3.0没有强耦合,可以先做 |
好的,1和3能理解,第2个能详细讲一下是要做什么吗? |
@kuitos 插件源码需要放在哪里呀?我直接在packages里建一个子包? |
是的,新建一个包 |
想詢問一下,會在規劃 Vite 5 嗎? |
@kuitos 看一下哈,需求是否对齐,是否有补充 摘要 背景 提议
使用方法: const QiankunOutputPlugin = require('qiankun-webpack-plugin'); module.exports = { 示例 向后兼容性 实现策略
|
需支持两个版本吗?比如webpack4和5 |
library可以改成默认只配 packageName了,packageName–name是多webpack entry才需要的,可以默认不考虑了 |
可以都支持,因为看到现在官网手动改造的教程是4和5都有 |
ok |
都支持的话需要发两个插件包吗?还是一个包就能兼容? |
我先尝试一个包兼容两个版本,如果实现上有解决不了的问题,就优先支持webpack5 |
比如常见的 code split 打出两个 chunk,一个 common.js 一个 app.js,那打出来的 html 应该是 <script src="common.js"></script>
<script src="app.js" entry></script> |
要不插件增加一个可选参数让用户自己指定要给哪些js增加entry标记,类似这个实现webpack-nomodule-plugin |
这个不应该手动指定的,一个 html 里只会有一个 entry js |
自动处理看起来场景比较复杂,例如examples里的react16,code split之后,qiankun的生命周期钩子不是在entry的js(static/js/bundle.js)暴露出来,而是在/static/js/main.chunk.js暴露的 |
大部分情况下,是不是通过 HTMLWebpackPlugin 提供的 files.js 数组里最后一个非异步脚本,就可以确定 entry JS了? |
嗯嗯,大部分情况是这样,只是这样可能不太可靠,或者就默认以最后一个为entry,特殊情况用户也可以通过插件参数指定? |
现在要兼容 |
unplugin 看着不错,如果能支持我们的功能那可以试试。
可以的,不过我感觉这个配置不用现在就提供,可以后面发布后收集一下场景,看看什么样的才需要手动指定?🤔 |
可以,初期不用搞得太复杂,实在有这个需求再增加 |
请问这个插件能支持qiankun 2.x吗 |
webpack 配套的 qiankun 插件,提供以下能力:
The text was updated successfully, but these errors were encountered: