인프런 커뮤니티 질문&답변

김지현님의 프로필 이미지
김지현

작성한 질문수

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

Redirection

질문입니다.ㅠ

작성

·

323

·

수정됨

0

[ 질문1 ]

  1. 7_query_parameter.dart 에서 ~of(context). 다음에 queryParameters가 자동으로 뜨지 않습니다. 6번의 pathPameters는 떠서 구현했는데, 이건 안뜨네요, 그래서 ~.uri.queryParameters로 하니까 떠서 일단 이걸로 선택해봤습니다. 그랬더니 화면이 조금 차이가 있었습니다.

일단 코드입니다.

import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:go_router_v7_actual/layout/default_layout.dart';

class QueryParameterScreen extends StatelessWidget {
  const QueryParameterScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return DefaultLayout(
      body: ListView(
        children: [
          Text(
            'Query Parameter : ${GoRouterState.of(context).uri.queryParameters}'),
          // /query_parameter?utm=google&source=123
          // /query_parameter?name=codefactory&age=32
          ElevatedButton(
            onPressed: () {
              context.push(
                Uri(
                  path: '/query_param',
                  queryParameters: {
                    'name': 'codefactory',
                    'age': '32',
                  },
                ).toString(),
              );
            },
            child: Text(
              'Query Parameter',
            ),
          ),
        ],
      ),
    );
  }
}

그리고 이건 화면인데요, title 뒤에 길게 이어진 text가 없습니다.그리고 버튼을 누를때마다 아래와 같은 페이지만 반복적으로 뜹니다.

[ 질문2]

go nest에서 네비게이션의 selectColor와 실제 선택이 일치하지 않습니다.ㅠㅠ 코드를 여러번 검토하며 뭐가 틀렸는지 수없이 봤는데, 못찾았습니다..

답변 2

0

김지현님의 프로필 이미지
김지현
질문자

아 넵 답변 감사합니다, 두번째는 일단 넘어가도록 하겠습니다!

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

Go Router v11 이후로 말씀하신대로 uri.queryParameters로 변경이 되었습니다.

그리고 AppBar에 query parameter가 더이상 뜨지 않는 이유는 location을 toString()화 했을때 query parameter는 더이상 포함되지 않도록 됐기 때문입니다. (이 부분은 신경 쓸 필요가 없습니다. uri.queryParameters를 사용해서 가져올 수 있다는 것만 알면 됩니다.)

2번 질문은 정확히 이해를 못하겠습니다. 코드 예제와 함께 다시 질문해주시면 답변 드리도록 하겠습니다.

감사합니다!

김지현님의 프로필 이미지
김지현

작성한 질문수

질문하기