169 похожих чатов

Привет) Что-то не получилось отыскать как запретить переход на определенный

экран по кнопке назад в stack navigation ? например, я не хочу, чтобы можно было по кнопке назад вернуться в окно онбординга.

12 ответов

12 просмотров

Доку внимательно читать, не костылить, а рендерить экраны только те, которые требуются. Как в auth flow описано

Vitaliy Ponomarev
Доку внимательно читать, не костылить, а рендерить...

Разве он не про поведение физ кнопки говорит? При чем тут рендеринг?

BackHandler.addEventListener('hardwareBackPress

https://reactnative.dev/docs/backhandler

А в твоём кейсе, я бы на последнем экране онборлинга, который ведёт в основное представление, делал метод не push а replace, либо вообще dispatch со сбросом стэка и последующий пуш одного роута

Игорь Стрелов
Разве он не про поведение физ кнопки говорит? При ...

При том что это проблема xy . Нужно рассматривать поведение навигатора, а не кнопки. Кнопка только триггер для действия, (один из, как минимум есть ещё свайп) и наделять её какой-то дополнительной ответственностью, знанием стека навигации и т.п. неправильно. Это создаёт больше проблем.

Vitaliy Ponomarev
При том что это проблема xy . Нужно рассматривать ...

Кнопка и свайп, это один системный триггер, или я что-то упустил?

Vitaliy Ponomarev
При том что это проблема xy . Нужно рассматривать ...

Ну последним сообщением я ему и предложил, единственной, на мой взгляд, верное решение. Чистить стэк перед переходом с онбординга в основное представление приложения. Сперва я не так понял его задачу и предложил залочить кнопку

Игорь Стрелов
Кнопка и свайп, это один системный триггер, или я ...

Упустил. BackHandler перехватит хардварную кнопку на андроиде, но не кнопку в хедере и не свайп. Обнулять стек - решение (хоть и не всегда удобное, и простое для понимания в первое время), но зачем, если уже с 5 версии есть условный рендеринг (который как раз и описан в auth flow)? А в 6 ещё и группировка экранов в стеке

Vitaliy Ponomarev
Упустил. BackHandler перехватит хардварную кнопку...

Да, можно и через условный рендеринг с группировкой скринов. Только вот хз. Что с историей стэка будет в момент смены условного блока. Если она останется, не вернёт ли его все равно к прошлому экрану?

Max-Likhavets Автор вопроса
Max-Likhavets Автор вопроса

Похожие вопросы

Обсуждают сегодня

type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
45
А чем вам питонисты не угодили?😂
.
79
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
А дин типизация это хорошо или плохо?
Alexey
12
Исходники плюс документация? Вы гоните)) демок хватит всем
zamtmn
11
Я хочу задать вопрос на тему "ещё одного" языка для входа на fpc. Ну, чтобы через флаг {$mode} фронт мог воспринимать "немножко другой синтаксис с той же самой семантикой... Э...
Wlad
4
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Hello. Could you please help me with finding all coordinates within a radius using a spatial index, given that I have a table with coordinates? SET @lng = 37.57925; SET @lat ...
Rinchin G
7
Карта сайта