ant-design / antd-mobile-samples

antd-mobile samples
1.15k stars 1.09k forks source link

object-assign 顺序不固定引起 checksum warning 的问题 #17

Closed paranoidjk closed 7 years ago

paranoidjk commented 7 years ago

@cncolder 有空的时候可以基于这个 demo 检查下最新的 antd-mobile 代码 ssr 是否有 checksum 问题

paranoidjk commented 7 years ago

ref: https://github.com/ant-design/ant-design-mobile/issues/1505

rc-tools, antd-tools 都已经添加了 babel-plugin-transform-assign

benjycui commented 7 years ago

即使不去掉 warning,至少也要明确告诉开发者哪些版本以下会报 warning。

cncolder commented 7 years ago

你是说 core-js 在同一个环境下运行两次也有可能产生不同结果么?react checksum 是指最终的 dom,组件属性顺序会不会影响 dom 输出结果这个还真不清楚。因为我看到 react 生成的 dom 很整齐,总是第一条 class 最后一条 data-reactid。

本来我想增加一个 .jest.node.json 配置,最起码做为一个手动备选测试,但是因为 demo 要大量改动,所以没成功。

benjycui commented 7 years ago

你是说 core-js 在同一个环境下运行两次也有可能产生不同结果么?

不是,是 Node.js 和浏览器生成的结果 key 的顺序不一致。

paranoidjk commented 7 years ago

@benjycui

搞笑了... react 使用的 object-asign 来解决的服务端渲染的props顺序问题.... https://github.com/facebook/react/issues/6451

paranoidjk commented 7 years ago

幸亏业务上 react 都用的 umd bundle,不然我去 object-assign 都白干了...

benjycui commented 7 years ago

我就奇怪为什么去掉 object-assign 后没有爆 issue。。。不可能用户用的浏览器和 node 都是最新的。。