amazeui-touch
amazeui-touch copied to clipboard
在使用amazeui和react-router3.0配合的时候组件会渲染两次
https://github.com/ReactTraining/react-router/issues/4183
上面的地址是我去react-router提交的issues,我不知道这个是react-router的问题还是amazeui-touch的问题。
我升级到3。0后根据 #112 中你们的提交记录修改了入口的component的。附上我的代码:
望回复~真的很急。。。
下面注销的代码是因为使用专场动画,在转场的时候,久页面也会重新render一次,你们的回复是不使用转场动画,可否给一个能使用转场动画,但是不会在转场的时候重新渲染一次久组件的方法?
@windcbf @wjn161 @zhang-z @minwe @huangzhipeng
3.0 没有 key
这个属性了,改成别的不就不会渲染两次了吗?https://github.com/amazeui/amazeui-touch/blob/a8f18ffa76953b7d6c7696a767240a8152c3bedd/kitchen-sink/components/App.js#L24
@minwe 是的,render会执行两次,我打印this.props.location
中,status分别是push,然后是pop。我就是按照这个文件修改的~设置的是pathname
@minwe 现在不确定的是react-router的原因还是amazeui的原因,所以我在两边都提了issues。
@minwe 对了。我使用了react-redux这个组件了的~会不会和配合这个组件有关?我看你们的示例没用组合这个,希望能加入,嘿嘿。
我们用 [email protected] 的时候也有渲染两次的问题,不过我们没有用 amazeui 。
初步怀疑是 react-router 依赖的 history 的问题
https://github.com/mjackson/history/blob/v3.2.1/modules/HashProtocol.js#L66
@wyvernnot 嗯嗯,的确,我测试的也是,render函数会执行两次,第一次是push或者replace,第二次是pop状态。
@medz 我用browserHistory就沒事了~
@medz 这个问题是怎么解决的?