• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

질문입니다.ㅠ

23.10.31 01:06 작성 23.10.31 01:09 수정 조회수 228

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

김지현님의 프로필

김지현

질문자

2023.10.31

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

0

안녕하세요!

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

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

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

감사합니다!