You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Suppose we have a couple of components that are stateful, now we mount them to tab content.
I know I can change the state of one component, when the tab that contains it is activated. But after switching to another tab and back, the component is re-mounted and the modified state of it is gone.
Maybe it is too much for react-tabtab, but is there a way to maintain the states of all tab content ?
That's a good point.
The reason why react-tabtab is designed with re-mount mechanism is hoped to handle as many tabs as possible. If it keeps all the panel mounted result, it will cause performance issue.
But yes, I think that's a possible situation when creating tab UI. Maybe it's possible to add a cache props on the tab, it means this panel won't be unmounted. (Of course, it means developers need to handle the performance issue by themselves.
The possible api:
<Tabs><TabList><Tab>Tab1</Tab><Tabcached>Tab2</Tab> // this tab wont be unmount
</TabList><PanelList><Panel>
Accusamus enim nisi itaque voluptas nesciunt repudiandae velit. <br/>
Ad molestiae magni quidem saepe et quia voluptatibus minima. <br/>
Omnis autem distinctio tempore. Qui omnis eum illum adipisci ab.
</Panel><Panel>
Officiis commodi facilis optio eum aliquam.<br/>
Tempore libero sit est architecto voluptate. Harum dolor modi deleniti animi qui similique facilis. Sit delectus voluptatem praesentium recusandae neque quo quod.
</Panel></PanelList></Tabs>
Activity
ctxhou commentedon May 6, 2018
That's a good point.
The reason why
react-tabtabis designed with re-mount mechanism is hoped to handle as many tabs as possible. If it keeps all the panel mounted result, it will cause performance issue.But yes, I think that's a possible situation when creating tab UI. Maybe it's possible to add a
cacheprops on the tab, it means this panel won't be unmounted. (Of course, it means developers need to handle the performance issue by themselves.The possible api:
What do you think?
acllm commentedon May 7, 2018
Yeah, I think it's a great solution when the effects of the performance issue are limited.
Some tabs with
heavycomponent and lots of middle states can be set withcacheprop, and other tabs can be set without the prop.acllm commentedon May 7, 2018
About how to handle performance issues, I think it deserves detailed discussion.
Many small but useful usage tips can be brought out.
dineshnamburi commentedon May 21, 2018
Hi @ctxhou , is there any plan to add a feature like cached prop to this module, in near future???
ctxhou commentedon May 22, 2018
Hi @dineshnamburi, I will try to add this feature in recent. Maybe next month.
If you have any idea of this feature, any help and PR is welcome.
qqdaiyu55 commentedon Oct 13, 2018
@ctxhou Any plan on implementing the feature? Thanks.
ctxhou commentedon Oct 13, 2018
Hi @qqdaiyu55
I am a little busy recently. Are you interested in implementing this issue?
qqdaiyu55 commentedon Oct 14, 2018
@ctxhou Sorry I'm also busy recently, I'll take a look if I have time. If you have any idea on implementing this feature, you can post it here : )
sandipbgt commentedon May 8, 2019
Any update on it? or any possible solution or hack for now?