В чем разница между Auto Router и Go Router во Flutter?

Оба используются как декларативный способ навигации, но в зависимости от варианта использования, когда нам следует использовать автомаршрутизацию и переход по маршруту?

Разница между обоими вариантами использования заключается в том, когда нам следует использовать конкретный пакет для навигации в точках.

Альтернативные пакеты для навигации, кроме Go и Auto Route.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
444
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Auto Router и Go Router используются в качестве декларативных способов навигации во Flutter, но у них есть некоторые различия, как показано ниже.

Автоматический маршрут:

Это навигационный пакет Flutter, он позволяет без усилий передавать строго типизированные аргументы deep-linking и использует генерацию кода для упрощения настройки маршрутов. При этом для создания всего необходимого для navigation внутри вашего приложения требуется минимальное количество кода.

Перейти к маршрутизатору

Пакет декларативной маршрутизации для Flutter, который использует Router API для предоставления удобного url-based API для навигации между различными экранами. Вы можете определять шаблоны URL-адресов, осуществлять навигацию с помощью URL-адреса, обрабатывать глубокие ссылки и ряд других сценариев, связанных с навигацией.

Автоматический маршрут Перейти к маршрутизатору Декларативная маршрутизация Декларативная маршрутизация Генерация кода Нет генерации кода Маршрутные стражи Упрощенная защита маршрутов Вложенная навигация Интегрировано с Flutter Navigation 2.0. Интеграция с виджетами Flutter Интеграция государственного управления

Ключевые отличия-

Генерация кода:

Auto Route опирается на генерацию кода для определения маршрутов, что может добавить дополнительный шаг в процесс разработки, но обеспечивает строгую типобезопасность и сокращает количество шаблонов.

Go Router не использует генерацию кода, предлагая более простой подход, при котором маршруты определяются непосредственно в коде.

Сложность и настройка:

Автоматическую маршрутизацию может быть сложнее настроить на начальном этапе из-за необходимости генерации и настройки кода.

Go Router обычно проще в настройке и использовании, особенно для небольших проектов или разработчиков, которые предпочитают менее навязчивую настройку.

Гибкость:

Auto Route предоставляет больше возможностей для управления сложными процессами навигации, такими как вложенная навигация и пользовательские переходы маршрутов.

Go Router проще и более ориентирован на интеграцию с API Navigator 2.0, что делает его более гибким для навигации на основе URL-адресов в веб-приложениях.

Подробнее о auto_route и go_router , а также о разнице здесь

ваш ответ кажется созданным ИИ, что противоречит правилам. Я также думаю, что в нем есть ошибки, потому что, насколько я знаю, они оба используют Navigator 2.0, а также поддерживают вложенную навигацию и пользовательские переходы маршрутов.

Ivo 28.05.2024 08:16

Да @Ivo, они основаны на Navigator 2.0, и оба поддерживают вложенную навигацию, но в зависимости от варианта использования, когда нам следует использовать Go и Auto, был мой вопрос, который до сих пор не ясен!

Aditya Zanzane 28.05.2024 09:00

Другие вопросы по теме