dangngocduc / cubit_app_flow

A Sample for flutter-cubit + nested navigation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

cubit_app_flow

A Flutter demo for flutter_bloc(Cubit) + Nested Navigation

Getting Started

State Management

flutter_bloc

1, Auth flow

    BlocBuilder<AuthBloc, AuthState>(
        builder: (context, state) {
          return state.when(
              authorized: (user) => AuthorizedNavigation(),
              unauthorized: () => AuthorizationNavigation(),
          );
        },
      buildWhen: (previous, current) {
          return previous.runtimeType != current.runtimeType;
      },
    );

2, Account Info

class AccountAppBar extends StatelessWidget implements PreferredSizeWidget {
  @override
  Widget build(BuildContext context) {
    return BlocBuilder<AuthBloc, AuthState>(
        builder: (context, state){
          return state.when(
              authorized: (data) {
                return Material(
                ...
                );
              },
              unauthorized: () => SizedBox(),
          );
        },
    );
  }

  @override
  Size get preferredSize => Size.fromHeight(kToolbarHeight);
}

Navigation

Flow App

Demo

Login in Home Page
Profile Edit

About

A Sample for flutter-cubit + nested navigation


Languages

Language:Dart 94.2%Language:Ruby 2.6%Language:HTML 2.1%Language:Swift 0.8%Language:Kotlin 0.2%Language:Objective-C 0.1%