패키지, 저장소 및 앱 카테고리 검색

패키지 상세v2.0.1

nuvigator

Flutter 네비게이터 위에 있는 강력한 라우팅 추상화로, 몇 가지 새로운 기능을 제공하고 라우터를 정의하는 쉬운 방법을 제공합니다.

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
4.9만
좋아요
50
Pub 점수
140

패키지 설치

flutter pub add nuvigator

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

Nuvigator는 Flutter의 내장 Navigator를 확장하여 추가 기능과 간단하고 선언적인 방식으로 네비게이션 경로를 정의할 수 있는 라우팅 추상화입니다. Android, iOS, Web, macOS, Windows, Linux 등 다양한 플랫폼에서 앱 네비게이션을 관리하는 깔끔하고 확장 가능한 방법을 제공합니다. 구조화된 라우터 구성과 개선된 네비게이션 처리를 통해 Nuvigator는 개발자가 더 적은 반복 코드와 더 높은 유지보수성을 갖춘 복잡한 네비게이션 흐름을 쉽게 구축할 수 있도록 도와줍니다.

사용 사례

  • 복잡한 탐색 흐름
  • 크로스 플랫폼 탐색
  • 모듈러 앱 아키텍처
  • 간편한 루트 관리
  • 탐색 상태 지속성

주요 기능

  • 선언적 라우트 정의
  • 다중 플랫폼 지원
  • 내비게이션 상태 관리
  • 확장 가능한 라우터 시스템
  • 관심사의 명확한 분리

적합한 대상

  • 대규모 플러터 애플리케이션
  • 일관된 탐색 패턴이 필요한 팀
  • 고급 라우팅 로직이 필요한 앱
  • 나비게이션 보일러플레이트를 줄이고자 하는 개발자
  • 다중 플랫폼을 대상으로 하는 프로젝트

고려 사항

  • 새 사용자를 위한 학습 곡선
  • 간단한 앱에서의 잠재적 오버헤드
  • 라우팅 개념을 이해해야 합니다
  • 원본 네비게이터에 비해 커뮤니티 채택이 제한적
  • 고급 사용 사례를 위해 맞춤 설정이 필요할 수 있습니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

Nuvigator

CircleCI Pub

Routing and Navigation package.

Não fala bem inglês? Leia o README_PT

What

Nuvigator provides a powerful routing abstraction over Flutter's own Navigators. Model complex navigation flows using a mostly declarative and concise approach, without needing to worry about several tricky behaviors that Nuvigator handles for you.

Nuvigator can help you with:

  • Large/Modular Apps: Where you need to have an unified API to able to register routes and design relationship between them
  • Nested Navigation: When you want to have nested/children Navigator inside your app, creating the concept of self contained flows
    • Handles Navigation thought Nuvigator ins your Widget Tree, not need to know where your route is declared
    • Handles pop behavior when a nested Navigator reaches it's end, is able to transparently forward pop results into underlying caller, provider helpers to deal with nested navigation
    • Handles Hero animation/transition between nested Navigators
    • Handles Android back button correctly on nested Navigators
    • Improve support for nested PageRoutes with NuvigatorPageRoute mixin
  • Using DeepLinks: You want to navigate inside your App using DeepLinks, with support for Path Parameters and Query Parameters
  • A declarative, easy to use API to declare and compose Routes together

API Documentation

Focus on providing a more flexible, easier and dynamic API for declaring Navigation and Routing

Quick Start

The simplest you can get:

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Nuvigator App',
      builder: Nuvigator.routes(
        initialRoute: 'home',
        screenType: materialScreenType,
        routes: [
          NuRouteBuilder(path: 'home', builder: (_, __, ___) => HomeScreen()),
          NuRouteBuilder(path: 'second', builder: (_, __, ___) => SecondScreen()),
        ],
      ),
    );
  }
}

A more complete example:

import 'package:nuvigator/next.dart'; // import the next file instead of `nuvigator.dart`
import 'package:flutter/material.dart';

// Define a new NuRoute
class MyRoute extends NuRoute {
  @override
  String get path => 'my-route';

  @override
  ScreenType get screenType => materialScreenType;

  @override
  Widget build(BuildContext context, NuRouteSettings settings) {
    return MyScreen(
      onClick: () => nuvigator.open('next-route'),
    );
  }
}

// Define your NuRouter
class MyRouter extends NuRouter {
  @override
  String get initialRoute => 'my-route';

  @override
  List<NuRoute> get registerRoutes => [
    MyRoute(),
  ];
}

// Render
Widget build(BuildContext context) {
  return Nuvigator(
    router: MyRouter(),
  );
}

License

Apache License 2.0

카테고리

의존성

의존성 목록 3 개

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.