无法使用以下用例重置堆栈。
假设屏幕A为根,然后导航至屏幕B, 然后,在导航到屏幕C时,我希望堆栈具有A-> C而不是A-> B-> C。
如果堆栈具有A-> B-> C,而我想将其根屏幕作为C的堆栈。
请在此用例上提供帮助
答案 0 :(得分:0)
不支持此用例,因为从堆栈中间删除元素不是有效的堆栈api。您可能希望以模式显示B,然后将C推入该模式包含的堆栈中。如果要禁止用户从C退回到B,则不要将setStackRoot
与C一起使用。
将setStackRoot与C一起使用
答案 1 :(得分:0)
如果您使用的是RNN v4,请使用replace而不是push或Navigation
navigation.replace(routeName,params,action);
请参见https://reactnavigation.org/docs/4.x/navigation-prop/#replace