월 26,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Pagination 에 parameter를 after, count 에 덧붙여 다른것을 추가 할수 있을까요?
안녕하세요.pagination 을 응용하면서 추가적인 조건이 생겨 parameter를 추가하고 싶습니다. 예를 들어 restaurant 화면에서 별점이 4점 이상인것만 가져오고 싶을때 하기 함수에다 추가해야 될것 같은데 잘 않되고 있습니다. 감사합니다.@GET('/') @Headers({'accessToken': 'true'}) Future<CursorPagination<RestaurantModel>> paginate({ @Queries() PaginationParams? paginationParams = const PaginationParams(), });
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
return에 BasicScreen()인가요?
안녕하세요.1분 30초 부터 named 페이지를 설정해 주시는데 새로운 GoRoute를 만들고 path와 name은 named와 관련된 것으로 해주셨습니다. 그런데 return을 NamedScreen이 아니라 BasicScreen으로 해주셨는데 의도하신건지 궁금해서 질문 남깁니다!
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Rating pagination
다이나믹 에러가 아닌 저는flutter: DioError [DioErrorType.other]: Invalid argument(s): Unsupported scheme '' in URI //http//127.0.0.1:3000/restaurant/5ac83bfb-f2b5-55f4-be3c-564be3f01a5b/rating/?count=20 이런에러가 나면서 평점 ui가 안보입니다 ,, ㅠㅠ
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
배운내용 정리 질문
안녕하세요 코드팩토리님 배웠던 내용들이 너무 많아 강의를 돌려보면서 보기가 조금 어려운데 출처를 밝히고 블로그에 내용을 기록해도 될까요
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
redirect: authStateProvider._redirectLogic 빨간줄
아래와 같은 코드인데 redirect부분에서 빨간줄이 나는데 뭐가 문제일까요 import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; import 'package:gorouter_practice/model/user_model.dart'; import 'package:gorouter_practice/screen/login_screen.dart'; import 'package:riverpod/riverpod.dart'; import '../screen/1_screen.dart'; import '../screen/2_screen.dart'; import '../screen/3_screen.dart'; import '../screen/error_screen.dart'; import '../screen/home_screen.dart'; final routerProvider = Provider<GoRouter>((ref){ final authStateProvider = AuthNotifier( ref: ref ); return GoRouter( initialLocation: '/', errorBuilder: (context,state){ return ErrorScreen( error: state.error.toString()); }, // redirect 주소가 잘못됐을때 올바른 주소로 연결 redirect: authStateProvider._redirectLogic, // refresh 새로고침, 상태가 변경할 때마다 redirect실행 refreshListenable: authStateProvider, routes: authStateProvider._routes ); }); class AuthNotifier extends ChangeNotifier{ final Ref ref; AuthNotifier({ required this.ref, }){ ref.listen<UserModel?>( userProvider, (previous, next) { if(previous!=next){ notifyListeners(); } } ); } String? _redirectLogic(GoRouterState state){ //UserModel의 인스턴스 or null final user = ref.read(userProvider); //로그인을 하려는 상태인지(location은 현재 위치를 가져옴) final logginIn = state.location == '/login'; //유저 정보가 없다 - 로그인한 상태가 아니다 // //유저 정보가 없고 //로그인하려는 중이 아니라면 //로그인 페이지로 이동한다. if(user == null){ //로그인을 시도하려는 상태면 null 반환 로그인페이지 위에 로그인페이지가 쌓이는걸 방지하기 위해 return logginIn ? null : '/login'; } //유저 정보가 있는데 //로그인 페이지라면 //홈으로 이동 if(logginIn){ return '/'; } //가려는 페이지로 보내줌 위의 로직은 일종의 필터 역할 return null; } List<GoRoute> get _routes => [ GoRoute( path: '/', builder: (_,state) => HomeScreen(), routes: [ GoRoute( //라우트안에 라우트를 넣으면 슬래시를 안넣어도됨 path: 'one', builder:(_,state) => OneScreen(), routes: [ GoRoute( //http://....../one/two 위의 페이지들이 다 깔림 //라우트안에 라우트를 넣으면 슬래시를 안넣어도됨 path: 'two', builder:(_,state) => TwoScreen(), routes: [ GoRoute( //http://....../one/two/three 위의 페이지들이 다 깔림 //라우트안에 라우트를 넣으면 슬래시를 안넣어도됨 //name으로 이름으로 이동 가능 중복x name: ThreeScreen.routename, path: 'three', builder:(_,state) => ThreeScreen(), ) ] ) ] ), GoRoute(path: '/login',builder: (_,state)=>LoginScreen()) ] ), //http://...../three -> 깔리지 않고 독립적으로 존재 GoRoute( path: '/three', builder:(_,state) => ThreeScreen(), ) ]; } final userProvider = StateNotifierProvider<UserStateNotifier,UserModel?>( (ref) => UserStateNotifier() ); //로그인한 상태면 UserModel 인스턴스 상태로 넣어주기 //로그아웃 상태면 null 상태로 넣어주기 class UserStateNotifier extends StateNotifier<UserModel?>{ UserStateNotifier(): super(null); login({ required String name }){ state = UserModel(name: name); } logout(){ state = null; } }
- 해결됨[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
대단하십니다!
node.js 서버는 선생님이 직접 구현하신거에요? ㄷㄷ
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
서버 세팅하는데 질문있습니다.
저도 윈도우의 안드로이드 스튜디오로 선생님의 파일을 다운받아 실행했는데요, 터미널이 동일하게 열리지 않습니다. 그래서 node.js commend를 실행해서 npm i 등을 실행하면 아래와 같은 오류가 발생합니다. 해결책을 모르겠습니다ㅜ
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
[질문] 카테고리별 상품 관리에 관해 중복 상품 문제
안녕하세요,저는 'category'라는 테이블을 생성하여 상품들의 상태를 관리하고 있습니다. 'family'를 통해 'categoryId' 값을 받아서 카테고리별로 상태를 관리하고 있는데 문제가 있어서 질문 드립니다.'categoryId' 값에 '0'을 주면, 카테고리와 상관 없이 모든 상품을 볼 수 있는 리스트를 만들 수 있었습니다. 그러나, 이 방법은 상품이 중복되어 나타나는 문제가 발생합니다.모든 상품을 한번에 받아서 필터로 처리하는 방법도 생각해 보았지만, 상품의 수가 너무 많아 이 방법은 효율적이지 않을 것 같습니다.구글링을 통해 정보를 찾아보고 다른 앱 레퍼런스도 찾아보았지만, 원하는 답변을 얻지 못하여 이렇게 글을 남깁니다. 이 문제에 대해 어떻게 해결할 수 있는지 도움을 주시면 감사하겠습니다.감사합니다.
- 해결됨[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
3.10 인스톨 관련
안녕하세요 방금 초급강의에서도 문의 드렸는데 혹시중급강의도 3.10버전에서 호환이 안될까요? ㅠㅠ
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Go Router 세팅 후 페이지 아무리 넘겨도 안될 때
go_router: ^7.0.1 저와 같이 메인 버전을 아무 생각없이 최신 버전을 쓰셨을 때버튼을 아무리 눌러도 페이지가 바뀌지 않아서 당황하실 분들께 남깁니다.물론 이제 중급이라 대부분은당연히 pub dev example을 살펴보셨겠지만 그래도 혹시나..우리 선생님께서 3가지의 파라미터를 넣는다고 하셨지만현재 기준으로는@override Widget build(BuildContext context) { return MaterialApp.router( routerConfig: _router, ); }이렇게 넣으면 된다고 합니다.
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
return super.onError(err, handler);의 의미는 무엇인가요?
return super.onError(err, handler);중간에 위 코드를 지우고그 자리에 return handler.reject(err)로 마무리 하셨는데이것의 의미가 궁금합니다
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
apk 다운시 서버! !
apk로 다른 핸드폰에 설치했는데.. 로그인이 안되네요 ㅠㅠ 로그인 할 수 있는 방법 없을까요??
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Invalid argument(s): No host specified in URI - 해당 에러가 뜨면서 이미지 파일이 안불러와집니다.
혹시 어느 부분을 수정해야하는지 알려주실 수 있나요?이미지 파일이 안불러와지는 것만 제외하면 나머지 기능은 정상적으로 작동합니다.
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
g.dart 에러
워닝에러 뜨면서 안댑니다,,
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
유저정보 화면을 만들때의 Provider 사용 문의 드립니다.
선생님한테 배운것을 응용하려는데 쉽지 않습니다.userMeProvider의 getMe()함수가 유저 정보를 가져오는 함수라서 이 함수를 이용해 유저정보화면을 만들려고 하는데많은 시행착오를 거친후 제가 할수 있는것은 FutureBuider를 이용하여 future 함수에다 ref.read(userMeProvider.notifier).getMe() 를 넣으니까 화면에 뿌릴수는 있게 되었습니다. 그런데 FutureBuider를 쓰는것은 왠지 선생님의 가르침에 역행하는것 같아서 문의 드립니다.유저프로필 화면에 Provider를 이용하여 데이터를 보여주는 가장 좋은방법은 무엇인지 궁금합니다.repository 나 provider 는 일반 프로그래밍 같아서 잘 이해가 되는데 이것을 화면에 뿌리는것이 너무 낯선 개념으로 다가와서 애를 먹고 있습니다.ㅠㅠ 감사합니다.
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
throttle 마지막 부분 이론강의가 안켜지네요,,,
throttle 부분 최적화 하려고 이론을 들으려는데 다른 다음 수업이나 이전 수업은 다 되는데 이론 파트면 30초 부근에서 계속 멈추네요,,,
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
탭바 이동후 다시 돌아가면 화면스크롤이 상단으로 이동하는 문제
bottom navigation bar의 4개 탭이 있는데예를 들면 첫번째 탭인 홈탭에서 10페이지 정도 아래로 스크롤해서 내려간후 두번째 탭인 음식탭으로 이동한후 다시 첫번째 탭인 홈탭으로 돌아오면 화면 스크롤이 그대로 있는것이 아니라 가장 상단으로 이동되어 있습니다.상단으로 이동되지 않고 그대로 있는 방법이 있을까요?감사합니다.
- 해결됨[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
dio error
dio로 auth api요청해보기에서 로그인 장면입니다..dio 버전도 똑같고 서버도 켜져있습니다뭔가문제죠,,?
- 해결됨[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
배달앱 결제 오류가 발생해 질문드립니다.
안녕하세요 선생님!문제점을 3시간정도 혼자 열심히 찾아봤는데 도저히 모르겠어서 질문드립니다!products: state .map( (e) => PostOrderBodyProduct( productId: e.product.id, count: e.count, ), ) .toList(),제가 추측하기로는 order_provider.dart의 해당 부분에서 값 입력이 제대로 되지 않아 catch로 빠져 결제 오류가 발생하는거 같습니다. 하지만 값 입력이 제대로 되지 않는 이유를 찾지 못했습니다.https://github.com/subinkr/DeliveryFlutter완강까지 앞으로 한발짝인데 혼자 해결하지 못해 아쉽네요 ㅠㅠ번거로우시겠지만 도움주시면 감사하겠습니다!
- 미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Provider 사용할 때 screen에 반드시 watch를 해야하나요?
read만 사용해도 되는 경우도 있나요?