-
Notifications
You must be signed in to change notification settings - Fork 139
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
[Bug]: About Vue 3 hot update #3217
Comments
@chenjiahan This Issure looks like it came from rspack. I started the service with Rpack and liveReload was still working。 |
|
Maybe related to Vue itslef? vuejs/core#3250 |
@chenjiahan oh my god,看起来他们那个issue已经open长达三年时间了😭 |
I have run it with webpack and hmr can work normally, which is not the same as the vue issue |
@witsaint Yes, HMR can run normally in both webpack and Vite, so I don't know why it doesn't work properly in RSBuild |
Related to the template caching feature in But the template caching is not available in vue-loader |
@chenjiahan Over the weekend, I probably found out the reason: the module returned in hot.xx.js does not match the moduleid of hot.accept in the code inserted by vue-loader. There are too many modules returned, and due content will be overwritten in runtime, so the callback of hot.accept is not executed |
Key code in hmr |
@chenjiahan dalao,will this be fixed as a bug in future versions |
Yes it should be fixed if it is a bug of Rspack. PR welcome~ |
@witsaint 大佬提个pr给修复下呗,菜鸡膜拜 |
笑死了哥,dalao 这翻译666 |
你就说能不能看懂吧 |
@chenjiahan Hello, excuse me, when can this be fixed |
@9aoy cc |
@MinGuoGuo can you add a permission for me. https://gitee.com/xiangminya/rsbuild-hmr |
那个仓库已经被我删掉了,这个也可以复现,https://gitee.com/xiangminya/rsbuild-demo,具体问题是保存代码热更新的时候会重载整个页面,使整个页面状态初始化,这点和webpack、vite的表现不一样,期望是热更新只更新修改部分,不对整个页面进行reload初始化。----------辛苦大佬了,😄 |
It seems that there is a problem with rspack's There is no change in the content or sourcemap (sourcemap is a new object, but the actual content has not changed) of Addition:
Reproduce demo(can compare webpack / test loader): |
Maybe related vuejs/vue-loader#1795. If The temporary solution in Rsbuild is: export default {
output: {
sourceMap: {
js: 'eval' // or false
},
},
}; |
I tried it and it still didn't perform well, but I'm still grateful 😭 |
Version
Details
我用rsbuild新建的vue3模板,热更新是对当前页面的全量替换,不会保留当前页面的state,我只是在template里面更新了ui,script里面的state都会重新初始,感觉这样体验很不好,这一点的表现和webpack,vite都有所不同。复现仓库链接:https://gitee.com/xiangminya/rsbuild-hmr 该仓库里面分别用rsbuild和vite初始化了一个项目,修改UI热跟新表现不一致
Reproduce link
https://gitee.com/xiangminya/rsbuild-hmr
Reproduce Steps
详细问题可到仓库查看
The text was updated successfully, but these errors were encountered: