Я не мог найти нигде в документах, объясняющих, что они делают. Когда пользователь открывает приложение, щелкнув URL-адрес схемы для приложения, я хочу, чтобы приложение вернулось на главную страницу. Как мне это сделать? Я попробовал Actions.Main({type: ActionConst.POP_TO});
, думая, что он выскочит, пока не найдет Main
, но выдало ошибку, поэтому я остановился на Actions.Main({type: ActionConst.RESET});
, но я не совсем уверен, что это делает (хотя это работает ).
Есть ли хорошее объяснение того, что они делают и когда их использовать?
| Недвижимость | Тип | Значение | Стенография |
| --- | --- | --- | --- |
| ДействиеКонст.ПРЫЖОК | string
| 'REACT_NATIVE_ROUTER_FLUX_JUMP' | 'прыжок' |
| ДействиеConst.PUSH | string
| 'REACT_NATIVE_ROUTER_FLUX_PUSH' | 'толкать' |
| ДействиеConst.REPLACE | string
| 'REACT_NATIVE_ROUTER_FLUX_REPLACE' | 'заменить' |
| ДействиеConst.BACK | string
| 'REACT_NATIVE_ROUTER_FLUX_BACK' | 'назад' |
| ActionConst.BACK_ACTION | string
| 'REACT_NATIVE_ROUTER_FLUX_BACK_ACTION' | «НазадДействие» |
| ActionConst.POP_TO | string
| 'REACT_NATIVE_ROUTER_FLUX_POP_TO' | 'попк' |
| ActionConst.REFRESH | string
| 'REACT_NATIVE_ROUTER_FLUX_REFRESH' | 'обновить' |
| ActionConst.RESET | string
| 'REACT_NATIVE_ROUTER_FLUX_RESET' | 'сбросить' |
| ActionConst.FOCUS | string
| 'REACT_NATIVE_ROUTER_FLUX_FOCUS' | 'фокус' |
это просто набор констант, представляющих реальные значения различных действий, чтобы избежать будущих изменений.
вы можете рассматривать это как избыточное действие.
Это может использоваться напрямую, например, Actions.pop()
будет отправлять соответствующее действие, написанное в исходном коде, или вы можете установить эти константы в типе сцены, когда вы делаете Actions.main()
, оно будет отправлять действие в соответствии с вашим scene type
или значение по умолчанию.
Но не каждый ActionConst можно использовать одинаково (использовать как действие или можно ли его установить в scene type
или нет), поэтому я сказал, что это просто набор констант для маскировки фактических значений.
что касается вашего вопроса, это действительно зависит от вашего route architecture
, потому что самым простым способом, который я могу сказать, было бы: Actions.main();
, если вы не беспокоитесь о стеках маршрутов.
set type='ActionConst.REPLACE' в основной сцене также перейдет к нему, но с заменой стека маршрутов.
@aksonov я думаю ты можешь закрыть это