yyman001
yyman001
有个关于热更新的问题想问下,我的index.html引入dev-server编译后的文件,但无论怎么都无效(刷新有效果,文件是已经编译成功的),页面有显示HMR开启的(好像没有别人成功的msg,xxserver服务器获取文件成功之类。。。),是不是一定要使用html-webpack-plugin插件编译出的文件才支持热更新?因为我没用这个插件,其他的都根据官网的配置和一些网友的文章配置了都不行(他们好像都用了html-webpack-plugin),我不清楚是不是要用这个插件才支持热更新。
vs的提示包含太多内容了,有点不够好用,而且你没办法关闭那些无用的提示,无从下手。
我用的 webstorm v2017 版 对冲突文件处理不太友好,有没啥别的插件支持
> > #361 作者回覆中有提到解決的方法,可以嘗試將element-ui加入webpack的白名單中 > > 我也是碰到这个问题,折腾了大半天,这个是解决办法,赞一个。 > webpack.renderer.config.js > `let whiteListedModules = ['vue', 'element-ui']` 刚也遇到这问题, 这个方案解决了.
我使用内嵌electron 调用也是一样会出现这个问题,web没发现这个问题
@DmitryNeposidjaka @eklundkristoffer i am find a fix function,more msg look at https://github.com/hejianxian/vddl/issues/27
@eklundkristoffer @DmitryNeposidjaka @hejianxian 这次是发现了导致这个bug的原因和暂时解决方案。
又经过一次调试发现 ```js handleMoved ({ index }) { this.lists.splice(index, 1) console.warn('1',new Date()) }, handleDrop (draggable) { console.warn('2',new Date()) this.lists.splice(draggable.index, 0, draggable.item) } ``` 原因,应该是插件设计的问题, 插入方法比删除方法执行还要早出发,所以导致了有重复键的出现(也有可能不同浏览器的渲染差异造成) 解决办法hack: 给`handleDrop`延迟执行,避免把copy元素先插入,这样2个重复的元素是导致我们出bug的主要原因 ```js //但如果拖拉动作过快,也会可能产生以上的bug,原因已经说了 handleDrop (draggable)...
@hejianxian 其他demo一样会触发这个错误的,但我看源码(修改module里面的源文件),也没法定位是哪个方法`删除`和`插入`,项目需要用到这个`nested.vue`,这种嵌套性,就更难修正这个bug,现在我想看看能不能暂时修复下。
@hejianxian 确实是这样的,就是那个嵌套的例子和源码有些功能有点复杂,例如我写了个自定义的drop事件,会把拖拉的元素删除,并没有添加成功,这个要用到vuex,如果可以把删除和添加方法暴露的更清晰点就好了,可以让自己控制,但现在我改源码调试也没有办法调试得出具体在哪里写这个操作,想配合vuex,现在不懂怎么处理,好尴尬,能力太弱。