inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

firebase 이메일 로그인 설정 관련 오류 문의의 건

미해결

Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)

안녕하세요, 강사님. Flutter 입문 - 안드로이드, iOS 개발을 한 번에 강의 수강중에 있으나 버전(?) 충돌로 인하여 문의 드립니다.(" 13. Firebase로 이메일 로그인 기능 구현" 학습중...) firebase 연동하여 이메일을 통해 로그인 될 수 있도록 설정하는 과정에서 오류가 발생된 것으로 보이는데 어떻게 해야 하는지 문의 드립니다. if (!snapshot.hasData) { return SignInScreen( providerConfigs: [EmailProviderConfiguration(),] ); "RUN시 오류 내용" Running "flutter pub get" in instagram_clone_renew... Because every version of flutter from sdk depends on collection 1.15.0 and firebase_auth_platform_interface >=6.4.0 depends on collection ^1.16.0, flutter from sdk is incompatible with firebase_auth_platform_interface >=6.4.0. And because firebase_auth 4.2.5 depends on firebase_auth_platform_interface ^6.11.3 and no versions of firebase_auth match >4.2.5 <5.0.0, flutter from sdk is incompatible with firebase_auth ^4.2.5. So, because instagram_clone_renew depends on both flutter from sdk and firebase_auth ^4.2.5, version solving failed. pub get failed (1; So, because instagram_clone_renew depends on both flutter from sdk and firebase_auth ^4.2.5, version solving failed.) 환경설정값 및 버전 Flutter 3.3.2 • channel stable • https://github.com/flutter/flutter.git Framework • revision e3c29ec00c (4 months ago) • 2022-09-14 08:46:55 -0500 Engine • revision a4ff2c53d8 Tools • Dart 2.18.1 • DevTools 2.15.0 dependencies: flutter: sdk: flutter image_picker: ^0.8.6 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.2 firebase_core: ^2.4.1 firebase_auth: ^4.2.5 flutterfire_ui: ^0.4.3+20

  • flutter
  • ios
  • Flutter
  • android
hosu you 댓글 1 좋아요 0 조회수 1123

우분투에서 작업시 윈도우로 mysql 설치하는 것에 관해서

미해결

[리뉴얼] React로 NodeBird SNS 만들기

제로초쌤 제가 우분투에서 Nodebird를 진행하고 있는데 더북에 써져있는 거처럼 리눅스(우분투)에서 설치하는 방법 그대로 설치하다가 Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (13) 소켓 에러가 계속 나서 해결하려고 인터넷에 찾아보면서 따라하고 있는데 해결이 안되서 혹시 윈도우로 mysql설치해서 진행해도 크게 차이가 없을까요?

  • redux
  • react
  • node.js
  • nodejs
  • express
  • next.js
  • Next.js
CJW 댓글 2 좋아요 0 조회수 421

Cannot read properties of undefined (reading 'map')

미해결

Slack 클론 코딩[실시간 채팅 with React]

제로초님, 코드를 따라친 후에 로그아웃을 하고 다시 로그인 하면 이런 에러메세지가 뜹니다. 그런데 네트워크 탭을 보면 로그인이 정상적으로 된거 같아서 새로고침을 하면 에러 메세지가 사라지고 슬랙에서 로그인된 화면이 제대로 뜹니다. 근데 또 여기서 워크스페이스를 생성하려고 하면 콘솔에 axioserror메세지가 떠서 어떻게 해야될지 모르겠습니다.. Workspace/index.tsx import axios from "axios"; import React, { FC, useCallback, useState } from "react"; import useSWR from 'swr'; import fetcher from "@utils/fetcher"; import { Navigate, Routes, Route } from "react-router-dom"; import { AddButton, Channels, Chats, Header, LogOutButton, MenuScroll, ProfileImg, ProfileModal, RightMenu, WorkspaceButton, WorkspaceName, Workspaces, WorkspaceWrapper } from "@layouts/Workspace/style"; import gravatar from 'gravatar'; import loadable from '@loadable/component'; import Menu from "../../components/Menu"; import Modal from "../../components/Modal"; import { Link } from "react-router-dom"; import { IUser } from "@typings/db"; import { Button, Input, Label } from "@pages/SignUp/styles"; import useInput from "@hooks/useInput"; import {toast} from 'react-toastify'; const Channel = loadable(() => import('@pages/Channel')); const DirectMessage = loadable(() => import('@pages/DirectMessage')); const Workspace: FC<React.PropsWithChildren<{}>> = ({children}) => { const [showUserMenu, setShowUserMenu] = useState(false); const [showCreateWorkspaceModal, setShowCreateWorkspaceModal] = useState(false); const [newWorkspace, onChangeNewWorkspace, setNewWorkspace] = useInput(''); const [newUrl, onChangeNewUrl, setNewUrl] = useInput(''); // revalidate = 서버로 요청 다시 보내서 데이터를 다시 가져옴 // mutate = 서버에 요청 안보내고 데이터를 수정 const {data: userData, error, mutate} = useSWR<IUser | false>('/api/users', fetcher, { dedupingInterval: 2000, }); const onLogout = useCallback(() => { axios.post('/api/users/logout', null , { withCredentials: true, }) .then(() => { mutate(false, false); }) }, []); const onClickUserProfile = useCallback((e: any) => { e.stopPropagation(); setShowUserMenu((prev) => !prev); }, []) const onClickCreateWorkspace = useCallback(() => { setShowCreateWorkspaceModal(true); }, []) const onCreateWorkspace = useCallback((e: any) => { e.preventDefault(); // 띄어쓰기도 검사해줘야됨 if(!newWorkspace || !newWorkspace.trim()) return; if(!newUrl || !newUrl.trim()) return; axios.post('http://localhost:3095/api/workspaces', { workspace: newWorkspace, url: newUrl, }, { withCredentials: true, }) .then(() => { mutate(); setShowCreateWorkspaceModal(false); setNewWorkspace(''); setNewUrl(''); }) .catch((error) => { console.dir(error); // 에러가 나면 사용자가 인지하게 해줌 toast.error(error.response?.data, { position: 'bottom-center' }) }) }, [newWorkspace, newUrl]) const onCloseModal = useCallback(() => { setShowCreateWorkspaceModal(false); }, []) if(!userData) { return <Navigate to="/login" /> } if(!userData) return null; return( <div> <Header> <RightMenu> <span onClick={onClickUserProfile}> <ProfileImg src={gravatar.url(userData.email, { s: '28px', d: 'retro' })} alt={userData.nickname} /> {showUserMenu && <Menu style={{ right: 0, top: 38 }} show={showUserMenu} onCloseModal={onClickUserProfile}> <ProfileModal> <img src={gravatar.url(userData.nickname, { s: '36px', d: 'retro' })} alt={userData.nickname} /> <div> <span id="profile-name">{userData.nickname}</span> <span id="profile-active">Active</span> </div> </ProfileModal> <LogOutButton onClick={onLogout}>로그아웃</LogOutButton> </Menu>} </span> </RightMenu> </Header> <WorkspaceWrapper> <Workspaces> {userData?.Workspaces.map((ws) => { return ( <Link key={ws.id} to={`/workspace/${123}/channel/일반`}> <WorkspaceButton>{ws.name.slice(0, 1).toUpperCase()}</WorkspaceButton> </Link> ); })} <AddButton onClick={onClickCreateWorkspace}>+</AddButton> </Workspaces> <Channels> <WorkspaceName>Sleact</WorkspaceName> <MenuScroll>menu scroll</MenuScroll> </Channels> <Chats> <Routes> <Route path="/channel" element={<Channel />} /> <Route path="/dm" element={<DirectMessage />} /> </Routes> </Chats> {/* Input이 들어있으면 별도의 컴포넌트로 빼는 것을 추천(input에 글자를 입력할 때마다 여기 있는 함수들이 다 리렌더링 되기 때문에 비효율적) */} </WorkspaceWrapper> <Modal show={showCreateWorkspaceModal} onCloseModal={onCloseModal}> <form onSubmit={onCreateWorkspace}> <Label id="workspace-label"> <span>워크스페이스 이름</span> <Input id="workspace" value={newWorkspace} onChange={onChangeNewWorkspace} /> </Label> <Label id="workspace-url-label"> <span>워크스페이스 이름</span> <Input id="workspace" value={newUrl} onChange={onChangeNewUrl} /> </Label> <Button type="submit">생성하기</Button> </form> </Modal> </div> ) } export default Workspace; Modal/index.tsx import React, { useCallback, FC } from "react"; import { CloseModalButton, CreateModal } from "./style"; interface Props { show: boolean; onCloseModal: () => void; children: React.ReactNode; } const Modal: FC<Props> = ({show, children, onCloseModal}) => { const stopPropagation = useCallback((e: any) => { e.stopPropagation() }, []); if(!show){ return null; } return( <CreateModal onClick={onCloseModal}> <div onClick={stopPropagation}> <CloseModalButton onClick={onCloseModal}>&times;</CloseModalButton> {children} </div> </CreateModal> ); }; export default Modal; swr2.0 버전, react v18, typescript v18 swr을 최신버전 사용해서 revalidate대신 mutate를 사용했는데 제가 잘못 사용한건지 모르겠습니다.

  • 클론코딩
  • babel
  • socket.io
  • typescript
  • 웹팩
  • react
  • 클론코딩
  • Socket.io
성창수 댓글 2 좋아요 0 조회수 1887

TableCalender 질문입니다..!

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

사진 올린것같이 state 에다 selectedDay값을 받고 onDaySelected함수에 setState를 실행시켰습니다. 다하고 나서 에뮬레이터를 확인해보니 선택한 날짜에 동그라미가 안생기더라구요.. 그래서 print를 이용하여 this.selectedDay 가 파라미터의 selectedDay가 같은 지 확인을 해봤더니 다른 값으로 false가 나옵니다. onDaySelected란 함수가 달력의 날짜를 선택하면 selectedDay와 focusedDay의 값이 선택한 날짜가 되는것 아닌가요?? 문제의 원인이 뭔지 이해가 안됩니다 ㅠ 확인해보니 selectedDay의 값이 바뀌지 않고 계속 null 인것으로 나옵니다.ㅜ

  • flutter
  • 클론코딩
  • 클론코딩
  • Flutter
wjdgus003 댓글 1 좋아요 0 조회수 771

미세먼지 Json 값 null일경우 에러

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다! 안녕하세요 !! 궁금한게 있어서 질문 드립니다 지역 변경후 값 받아오는 곳에서 "jeonbuk":null 이값으로 받아오는데 jeonbuk = double.parse(json['jeonbuk'] ?? '0'), null처리 한곳에 '0' 으로 변환 해주면 에러가 나오고 Bad state: No element See also: https://flutter.dev/docs/testing/errors jeonbuk = double.parse(json['jeonbuk'] ?? '0.01' ), '0' 이상 값으로 변환하면 정상적으로 나오는데 이유가 궁금합니다 .

  • flutter
  • 클론코딩
  • 클론코딩
  • Flutter
da shin 댓글 3 좋아요 0 조회수 934

기존의 테이블이 삭제되지 않습니다.

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. application.yml jpa: hibernate: ddl-auto: create 이라 되어 있는데, 기존의 테이블이 드랍되지 않습니다. 질문 게시판을 검색해보니, H2의 버전이 1.4.200인 경우에는 하이버네이트 버전을 5.4.13.Final 로 바꿔야 한다고 되어 있네요. 그래서, build.gradle 에 ext["hibernate.version"] = " 5.4.13.Final " 를 추가 해놓고 다시 돌려보니 이제는 엄청난 에러메시지가 나오네용.. 하이버네이트 버전을 바꾸는 방법이 올바르지 않았나요?

  • JPA
  • spring
  • 웹앱
  • spring-boot
  • jpa
  • java
  • 웹앱
Shin Berg 댓글 1 좋아요 0 조회수 532

crossaxisalignment.stretch

미해결

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

안녕하세요 간단한 질문입니다. productcard 작업하기 -> 4:18분 정도에서 crossaxisalignment.stretch하셨는데 이미 expanded가 쓰여서 cliprrect를 제외한 영역을 확보했는데에도 가로채우기인 stretch를 하는 이유가 궁금합니다.

  • flutter
  • Flutter
  • 하이브리드-앱
  • 하이브리드 앱
korea livfarm 댓글 1 좋아요 0 조회수 492

출첵앱에서 FutureBuilder에 의한 반복적인 permission 체크

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요. 이번 강의를 듣고 의문점이 생겼습니다. 출첵앱에서 permission체크를 가장 외곽에 있는 FutureBuilder를 통해서 실시했는데, 그렇게되면, build가 실행될때마다 Geolocator의 await Geolocator.isLocationServiceEnabled(); await Geolocator.checkPermission(); 두개의 async함수가 엄청난 병목을 만들 것 같은데, initState에서 해결하는게 더 좋은 코드가 아닌지 궁금합니다.

  • flutter
  • Flutter
  • 클론코딩
  • 클론코딩
박종수 댓글 1 좋아요 1 조회수 549

void의 정확한 의미를 모르겠어요

해결됨

나도코딩의 자바 기본편 - 풀코스 (20시간)

안녕하세요 챕터 6 부분을 공부하고 있는데 void를 쓰는 경우와 안쓰는 경우의 차이가 잘 와닫지 않습니다. 리턴값이 없으면 void를 쓰고, 리턴값이 있으면 void를 안쓴다고 알고 있는데 리턴값부터 이해가 잘 가지 않네요! 예를 들어서 // 호텔 주소 public static String getAdress() { return "서울시 어딘가"; } 과 셋째 줄에 sout "서울시 어딘가" 를 쓰는 것은 무엇이 다른건지요? 감사합니다 :)

  • java
  • 객체지향
  • oop
liltjay 댓글 1 좋아요 1 조회수 4817

현업에서의 jpql

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오)예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 쿼리 dsl에서 많이 설명 해주셨는데요 그렇다면 dsl을 쓰는 현업에서는 jpql을 사용할 일이 전혀 없을까요 ? 전혀 없다고 해도 근본이 되는 jpql을 알아둬야 하겠지만 학습시간에 대한 비중을 어디에 크게 둬야 할지 의문입니다 .

  • java
  • spring-boot
  • JPA
  • jpa
  • dsl
  • spring
  • query
댓글 1 좋아요 0 조회수 986

Funtion vs StatelessWidget 질문!!!

미해결

Flutter 응용 - 공공 API를 활용한 앱 만들기 (MVVM 패턴)

안녕하세요!! 강의를 듣다가 궁금한점이 생겨 질문드립니다. 해당 강의에서 state가 필요하지 않은 위젯을 만들때 단순히 Widget을 return 하는 함수를 사용하여 위젯을 만드시더라구요! 근데 제가 다른 강의를 들었을 때는 state가 없는 위젯의경우 statelessWidget을 사용했었는데, 혹시 statelessWidget을 사용하지 않고 함수를 사용하시는 특별한 이유가 있으실까요? 추가적으로 statelessWidget을 사용할때와 함수를 사용할때 어떤 차이가 있는건지 설명해주시면 감사하겠습니다!! Widget loadingWidget() { return Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: const [ Text('정보를 가져오는중'), CircularProgressIndicator(), ], ), ); } Widget buildRemainWidget(Store store) { var remainStat = '판매중지'; var description = '판매중지'; var color = Colors.black; switch (store.remainStat) { case 'plenty': remainStat = '충분'; description = '100개이상'; color = Colors.green; break; case 'some': remainStat = '보통'; description = '30 ~ 100 개이상'; color = Colors.yellow; break; case 'few': remainStat = '부족'; description = '2 ~ 30개이상'; color = Colors.red; break; case 'empty': remainStat = '소진임박'; description = '1개 이하'; color = Colors.grey; break; default: } return Column(

  • flutter
  • Flutter
akanfldkdlel 댓글 1 좋아요 0 조회수 686

팩토리 메서드를 정적으로 사용하는 이유에 대해서 궁금합니다

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요 영한님 강의 잘 듣고 있습니다^^ 전부터 궁금해 왔던 것인데요, 팩토리를 만들 때 정적으로 올리는 이유에 대해서 궁금합니다 영한님이 다른 QnA에서 추천해 주신 내용들을 읽어보았으나 굳이 왜 "정적"영역으로 보내는 가에 대한 의문은 쉽게 풀리지 않습니다 ㅜㅜ 일단 정적 팩토리 메서드로 보내면 생성자들에 대한 응집도가 크게 떨어지는 느낌입니다. "엘레강트 오브젝트"라는 책을 보면 생성자는 10~15개 까지도 만들고 퍼블릭 메서드를 최대한 적게 가져가라고 가이드를 주는데요, 정적 영역으로 보내면 주/부 생성자로 보낼 수 없기 때문에 그 많은 생성자들이 다 흩어지고, 생성자들 간 관계를 맺을 수 없기 때문에 유연성이 떨어지고 코드 중복이 자주 일어나는 효과가 나는 것 같습니다 이는 굳이 정적 영역으로 보내지 않고 주/부 생성자로 구분하면 쉽게 해결될 일이 아닌가? 하는 생각도 들어 질문을 드립니다

  • java
  • spring-boot
  • 웹앱
  • spring
  • jpa
  • JPA
  • 웹앱
득이 댓글 1 좋아요 3 조회수 908

length 오류

미해결

비전공자를 위한 진짜 입문 올인원 개발 부트캠프

콘솔 결과와 error가 같이 출력됩니다!

  • html/css
  • react-native
  • react
  • node.js
  • express
  • nodejs
  • javascript
  • 머신러닝
  • 머신러닝 배워볼래요?
  • tensorflow
  • HTML/CSS
유영 댓글 1 좋아요 0 조회수 740

body : ReadableStream 관련 문의드립니다.

해결됨

풀스택 리액트 라이브코딩 - 간단한 쇼핑몰 만들기

안녕하세요. 2강 진행 중 상품목록 조회시 msw Response 결과에 대한 body 값이 ReadableStream 으로 넘어옵니다. 이 경우 body 의 data를 확인할 방법이 있을까요? 답변 부탁드립니다. 감사합니다.

  • react
  • graphql
  • firebase
kylor 댓글 1 좋아요 0 조회수 856

연관관계의 주인을 양쪽 모두 설정할 경우

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 일대다[1:N] 강의의 16분 29초 쯤에 연관관계의 주인이 양쪽에 모두 있으면 망한다라는 언급이 있으신데, 순서가 꼬이거나 예측이 안된다는게 구체적으로 어떤 의미인지 예시가 있을까요? 정말 단순하게 생각하면 어쨋든 연관관계의 주인이 아닌 쪽에서 mappedby를 통해 읽기 전용으로 설정하지 않아도 Member에서 추가하나 Team에서 추가하나 반영될 수 있다면 오히려 좋지 않나 싶은 의구심이 들어서 질문드립니다 감사합니다 :)

  • jpa
  • java
  • JPA
김윤식 댓글 1 좋아요 0 조회수 4932

서버(백앤드) 강의 문의드립니다.

미해결

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

국내 많은 기업들이 스프링 프레임워크를 사용중에 있는데요.. 백앤드를 스프링프레임워크로 강좌가 있으면 정말 좋겠다는 생각입니다. 이제 막 프론트단을 flutter로 검토하는 정도의 기업들이 조금씩 나타나고 있는것 같은데요.. 중견기업에서... 추후 flutter개발자가 늘어나도 스프링 프레임워크 기반의 서버(RDB포함)까지 바꾸려고 하지 않아서요... ㅠㅠ 해당 회사 사정이기는 합니다만... flutter 공부하는 입장에서는 회사에서 근접한 환경들을 배우고 싶은 사람들이 저말고 있을것 같아서 말씀드립니다. 물론 회사에 서버개발자가 있기는 하지만 flutter 도입을 위해서 netjs프레임워크로 바꿀거 같지 않아서요.. ㅠㅠ 개발관련 업무 담당자의 사견이오니 무시하셔도 됩니다. 지나가면서 의견 한마디 드린정도로 생각해 주세요 강의 잘듣고 있습니다. 감사합니다.

  • flutter
  • 서버
  • Flutter
  • rdb
  • 하이브리드 앱
  • 백앤드
good hei 댓글 1 좋아요 0 조회수 751

NativeDatabase 했을 때 왜 자동완성에 안뜨나요?

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요 지금 캘린더 강의 데이터베이스 생성하기 부분 듣고 있습니다. database 폴더 생성하고 drifr_database.dart 파일 생성해서 코드 작성하는 부분인데, getapplicationdocumentsdirectory()를 입력할때 자동완성이 안뜨더라고요. 대소문자 구분 안하는걸로 설정해놔서 대문자 없어도 떠야하는데 말이에요. 그리고 강의에는 저 메서드있는 패키지 import 하기가 옵션으로 뜨던데 저는 그런것도 아예 없고요. 그래서 직접 import 써넣었어요. 그리고 그 다음에 nativedatabase 적었을때도 마찬가지로 자동완성 안뜨고 패키지 import 옵션도 안뜨더라고요. 근데 여기서 문제가, getapplicationdocumentsdirectory는 강의에서 어떤 패키지가 import 되는지 보여서 그냥 그대로 써넣었는데, nativedatabase는 그게 아예 보이지도 않아서 구글링하며 찾느라 좀 헤맸습니다. 자동완성도 안뜨고 import 옵션도 안뜨는건 도대체 왜 그런가요? 어디서 고칠 수 있는 건가요? 너무 불편해요 ㅜㅜ

  • flutter
  • 클론코딩
  • 클론코딩
  • Flutter
뀨우?뀨 댓글 1 좋아요 0 조회수 564

GesureDetector의 onTap이 작동하지 않는다면..

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

container에 color를 넣어주지 않았기 때문입니다. 아래 글을 확인해 보세요. https://dmsvk01.tistory.com/187

  • flutter
  • 클론코딩
  • Flutter
  • 클론코딩
최은총 댓글 1 좋아요 1 조회수 373

_BottomSlider에 videoController를 직접 넘겨주지 않는 이유가 궁금합니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

class _BottomSlider extends StatelessWidget { final Duration currentPosition; final ValueChanged<double> onBottomSliderChanged; final VideoPlayerController? videoPlayerController; 위의 형태로 videoController를 직접 넘겨줘도 정상작동하는 것을 확인했습니다. 만약 _BottomSlider에서 기능이 추가되어 videoController에 많은 접근이 필요해지면 일일히 넘겨주느라 복잡해질 것 같은데 통째로 넘겨주지 않는 것은 상태변화를 추적하기 원활하게 하기 위함인가요??

  • flutter
  • 클론코딩
  • 클론코딩
  • Flutter
박종수 댓글 1 좋아요 0 조회수 517

state 변경코드를 setState로 래핑하는 것과 setState 밖에서 실행하는 것의 차이

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요! 새해 복 많이 받으시기 바랍니다. state를 변경하는 코드를 래핑하지 않고 그냥 실행 후 setState를 실행해도 build가 호출되면서 정상적으로 작동하는 것을 확인했습니다. setState로 래핑하는 이유는 그냥 가독성을 위함 일까요??

  • flutter
  • 클론코딩
  • Flutter
  • 클론코딩
박종수 댓글 1 좋아요 0 조회수 612

인기 태그

인프런 TOP Writers

주간 인기글