[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
이미지 서버로 firebase를 선택했는데 업로드 속도가 많이 느려 로글르 살펴보니 error getting token java.util.concurrent.ExecutionException: com.googl e.firebase.internal.api.FirebaseNoSignedInUserException: Please sign in before trying to get a token. ' 'Error getting App Check token; using placeholder token instead. Error: com.google.firebase.FirebaseException: No AppCheckProvider installed. W/NetworkRequest(16203): no auth token for request' 위와 같은 두 에러가 뜨네요.. 구글에 검색해도 잘 안나와서 질문 남깁니다. 위와 같은 에러를 마주친 경험이 있을까요??
강의를 잘 따라오던 도중, feed_repository의 getFeedList함수에서 isEqualTo 부분(1분41초)에서 uid는 nullable이므로 feedScreen에서는 자동으로 null값이 들어가면서 모든 게시물들을 띄워줄거라고 하셨는데, 말씀은 이해가 되지만 현재 제 앱에서는 '게시물이 존재하지 않습니다.' 화면이 뜨네요. profile_screen에서는 잘 작동이 됩니다만, 혹시 feedScreen이나 feedProvider 부분에서 추가로 작성해줘야 하는 코드가 있을까요?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
basket screen에서 appBar에 뒤로가기 기능을 입혀보려고 합니다. 다른 페이지들은 가능한데, 장바구니 페이지에서는 뒤로가기 기능이 안되더라고요, paginationListview로 씌우고 <BasketITemModel>를 넣으려고 해서 안되는 것 같은데요, 이게 가능하도록 하려면 어떻게 해야할까요?
좋은 내용 감사합니다. 프롬프트 내용중에 "Translate Into Korean~" 이라는 내용으로 답변을 한글로 받게 됩니다. 혹시 [events] 밑에 오는 사용자 입력값과 동일한 언어로 결과를 받고 싶다면 어떻게 작성하면 될까요? 강의 내용을 기준으로 다국어 서비스를 만들려고 하는데, 영어가 짧아서 질문 드려요
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
플러터 기본편 완강하고 너무 만족해서 중급도 들으러왔어요+_+ 근데 강의 내용을 정리한 PDF자료가 있으면 어떨까 하는 생각이 자꾸 들어요.... 이런것도 있으면 정말 지구 1등의 플러터 강의가 될 것 같아요! ! 있어야 한다 이건 아니고 그냥 수강생 한명의 의견입니다..... - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
영상 5분대에 ImagePicker를 실행하려고 할 때쯤에 안드로이드 실기기에 테스트 해보면 이런 에러가 나오네요 ㅠ 검색해서 하라는 대로 해봐도 잘 안돼서 질문 드립니다. 환경은 윈도우에서 사용하는 중입니다. 추가로 비디오 플레이어 프로젝트 생성은 회사 맥으로 했고 집에서 윈도우로 이어서 작업하는 건데 이 부분에서 이슈가 있을까요?
Jupyter command jupyter-contrib not found. 지금 이 오류가 떠서 설치가 안되고 있는데요. 어떻게 해결해야 할까요?? 제가 봤을땐, pip install jupyter_contrib_nbextensions 이 부분은 실행이 되는데 jupyter contrib nbextension 이 부분에서 오류가 생기는 것 같습니다. ㅠㅠ
클래스 정의하고 호출하면 42번 줄에 player1에 해당하는 height와 weight의 값이 둘 다 나와야 하는데 저는 한가지 값만 출력이 됩니다. weight를 지우고 height 값만 쓰면 height값이 출력되고 둘다 쓰면 height값은 안나오고 weight값만 출력이 되는데 왜 이런 걸까요?
따라하며-배우는-노드-리액트-쇼핑몰 > 쇼핑 카트 페이지 데이터 가져오기 강의를 수강중에 있습니다. 17:30 부근에 제품을 배열로 다시 재정리 해주는 걸 설명해주고 계시는데 split 후에 map을 하는 이유가 궁금합니다. 값을 map 처리하기 전후로 찍어보니 값이 동일하게 나오는데 map 처리를 해주는 이유가 따로 있나 싶어서 여쭤봅니다.
안녕하세요 강의 정말 잘 듣고 있습니다. 해당 강의를 듣는중 궁금한점이 생겨서 질문 드립니다. 제가 원래 java/spring을 공부하다가 이번에 프론트 엔드쪽에 관심이 생겨서 React를 학습중인데 ide에서는 .js 파일을 Import할때 뒤에 왜 자동으로 .js가 안붙도록 되어있나요? 저는 강사님과 다른 ide를 사용중인데도 여기서도 .js가 자동으로 붙지 않습니다. import React from "react"; import Header from "./components/Header.js"; import KeywordList from "./components/KeywordList.js"; import SearchForm from "./components/SearchForm.js"; import SearchResult from "./components/SearchResult.js"; import Tabs, { TabType } from "./components/Tabs.js"; import store from "./Store.js"; 제가 추측한건데 React를 import 하는 경우에는 react 파일이 typeScript로 되어있고 나머지 경우는 전부 javaScript로 되어있습니다. 따라서 기본이 .ts로 설정 되어 있어서 javascript파일은 별로로 명시해줘야 찾을 수 있게 되어 있다고 생각이 듭니다. 별로 의미없는 질문이지만 궁금해서 질문 드립니다. 감사합니다.
서버 컴포넌트가 프론트 서버에서 미리 렌더링되는 것으로 알고 있었습니다. 이것이 맞을까요?? 클라이언트 컴포넌트랑 서버 컴포넌트의 렌더링 방식을 찾아봤음에도 여전히 헷갈리는데 시간적 여유가 되신다면 쉽게 알려주실 수 있을까요?? 클라이언트 컴포넌트 사이에 서버 컴포넌트를 넣으면 렌더링 동작이 어떻게 수행되는지 궁금합니다. 강좌에서는 PostArticle이라는 클라이언트 컴포넌트의 자식으로 서버컴포넌트를 넣는데, 공식문서에서는 클라이언트 컴포넌트가 DOM Tree의 끝에 오도록 하는 것을 권장하는 것으로 알고 있었는데 제가 잘못 알고 있던 것이었을까요??
안녕하세요. CatService 를 Riverpod 로 변경해보고 싶은데 잘 안되어 도움 요청드립니다. class CatService extends ChangeNotifier { // 고양이 사진을 담을 변수 List<String> catImages = []; // 좋아요 사진 List<String> favoriteImages = []; Dio dio = Dio(); SharedPreferences prefs; // 생성자 CatService(this.prefs) { dio.interceptors.add(LogInterceptor()); dio.interceptors.add(CustLogInterceptor()); getRandomCatImages(); favoriteImages = prefs.getStringList(FavoriteImage_KEY) ?? []; } void getRandomCatImages() async { Response resp = await dio.get( 'https://api.thecatapi.com/v1/images/search?limit=10&mime_types=jpg'); print(resp.data); for (int i = 0; i < resp.data.length; i++) { final map = resp.data[i]; catImages.add(map['url']); // url만 추출하여 catImages 에 이미지 추가. } notifyListeners(); } // 좋아요 토글 void toggleFavoriteImage(String catImage) { if (favoriteImages.contains(catImage)) { favoriteImages.remove(catImage); // 이미 좋아요한 경우 제거 } else { favoriteImages.add(catImage); // 새로운 사진 추가 } notifyListeners(); // 새로고침 } } 위 코드를 아래와 같이 Riverpod 로 변경해보고 싶습니다. final dioProvider = Provider<Dio>((ref) { final dio = Dio(); dio.interceptors.add(LogInterceptor()); return dio; }); final catImageProvider = NotifierProvider<CatImageNotifier, List<String>>(CatImageNotifier.new); final favoriteImageProvider = NotifierProvider<FavoriteImageNotifier, List<String>>(FavoriteImageNotifier.new); class CatImageNotifier extends Notifier<List<String>> { // 고양이 사진을 담을 변수 List<String> catImages = []; @override List<String> build() => []; void getRandomCatImages() async { final resp = await ref.read(dioProvider).get( 'https://api.thecatapi.com/v1/images/search?limit=10&mime_types=jpg'); for (int i = 0; i < resp.data.length; i++) { final map = resp.data[i]; catImages.add(map['url']); // url만 추출하여 catImages 에 이미지 추가. } state = catImages; } } class FavoriteImageNotifier extends Notifier<List<String>> { // 좋아요 사진 //List<String> favoriteImages = []; @override List<String> build() => []; // 좋아요 토글 void toggleFavoriteImage(String catImage) { if (state.contains(catImage)) { state.remove(catImage); // 이미 좋아요한 경우 제거 } else { state.add(catImage); // 새로운 사진 추가 } } } 배열이 2개라서 두개의 Notifier 를 상속받은 클래스로 나눠야 할 것 같은 생각이 들어 나눠보려고 하는데 잘 안됩니다. 어떻게 수정해야 되는지 도움 부탁드립니다. Class 를 하나 만들어서 id, imgUrl, isFavorite 3개의 칼럼으로 구분을 지어서 하면 해결될지 고민되기도 합니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
main 함수에서 async/await가 없더라고 순차적으로 아래처럼 수행이될거같은데 async/await가 필요한 이유가 무엇인지 궁금합니다 WidgetsFlutterBinding.ensureInitialized(); initializeDateFormatting(); runApp
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
[ERROR:flutter/shell/platform/darwin/graphics/ FlutterDarwinContextMetalImpeller.mm (42)] Using the Impeller rendering backend. 코팩님. 실행은 정상적으로 되지만 위와 같은 오류가 있는데 인터넷 검색해 보니 프로그램에서 바꾸면 된다고 나오는데, 근본적인 해결책은 없을까요? 셋팅 등에서..