묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
네스팅 방식으로 goRouter Go를 사용할때, 앱바타이틀이 정상적으로 표시되지 않는 문제
GoRouter 초반부를 듣고 있는데, 제목과 같이 앱바타이틀이 정상적으로 표시되지 않는 문제를 겪고 있습니다.Screen Three 로 이동했을때 앱바의 타이틀은/one/two/three 로 표기가 되나,뒤로가기를 눌렀을때 홈으로 이동할때까지 그 상태 그대로 /one/two/three 가 유지되다가 홈에서 / 로 표시가 됩니다.OneScreen, TwoScreen, ThreeScreen 별로 각각 텍스트로 one, two, three 라고 입력해서 확인해본결과,뒤로가기 할때마다 three 에서 출발해서 two, one 으로 화면에 잘 뜨는 것으로 보아 페이지 이동은 정상적으로 이루어지는 것 같습니다. 아래는 default_layout.dart 입니다.class DefaultLayout extends StatelessWidget { final Widget body; const DefaultLayout({ Key? key, required this.body, }) : super(key: key); @override Widget build(BuildContext context) { final router = GoRouter.of(context); return Scaffold( appBar: AppBar( title: Text( router.location, ), ), body: Padding( padding: const EdgeInsets.symmetric( horizontal: 16.0, ), child: body, ), ); } } main.dartvoid main() { runApp(_App()); } class _App extends StatelessWidget { _App({Key? key}) : super(key: key); final GoRouter _router = GoRouter( initialLocation: '/', routes: [ GoRoute( path: '/', builder: (context, state) => const HomeScreen(), routes: [ GoRoute( path: 'one', builder: (context, state) => const OneScreen(), routes: [ // http://.../one/two GoRoute( path: 'two', builder: (context, state) => const TwoScreen(), routes: [ // http://.../one/two/three GoRoute( path: 'three', builder: (context, state) => const ThreeScreen(), ), ], ) ], ), ], ), // http://..../one // http://..../two // GoRoute( // path: '/one', // builder: (context, state) => const OneScreen(), // ), ], ); @override Widget build(BuildContext context) { return MaterialApp.router( theme: ThemeData(useMaterial3: true), // uri string 을 상태 및 go router 에서 사용할 수 있는 형태로 변환해주는 함수(자동) routeInformationParser: _router.routeInformationParser, // 위에서 변경된 값으로 실제 어떤 route 를 보여줄지 정하는 함수(자동) routerDelegate: _router.routerDelegate, // route 정보를 전달하는 함수(자동) routeInformationProvider: _router.routeInformationProvider, ); } } home_screen.dartclass HomeScreen extends StatelessWidget { const HomeScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return DefaultLayout( body: Column( crossAxisAlignment: CrossAxisAlignment.stretch, mainAxisAlignment: MainAxisAlignment.center, children: [ ElevatedButton( onPressed: () { context.go('/one'); }, child: const Text('go to OneScreen'), ), ElevatedButton( onPressed: () { context.go('/one/two/three'); }, child: const Text('go to ThreeScreen'), ), ], ), ); } } 3_screen.dartclass ThreeScreen extends StatelessWidget { const ThreeScreen({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return DefaultLayout( body: Column( children: const [Text('three')], ), ); } } 정도로 참고 코드를 올렸습니다.goRouter 버전은 4.2.2 로 강의의 버전과 맞춰서 진행중입니다.
-
해결됨스파크 머신러닝 완벽 가이드 - Part 1
ModuleNotFoundError : No module named 'mmlspark' - 20230218
안녕하세요 spark 공부하면서 취준하고 있는 대학생입니다.좋은 강의 제공해주셔서 감사합니다 :-)다름이 아니라, 코드에 궁금한 점이 생겨서 문의 드립니다.mmlspark lightgbm 설치 후에 아래에 있는 코드를 실행 해야 하나요? Hyperlink로 접속을 해 봤는데 오류가 있는 거 같습니다.스파크 프레임워크로 처음 공부를 해 봐서 제가 틀린 걸 수도 있습니다. 도움 부탁드립니다:-)
-
미해결[리뉴얼] 타입스크립트 올인원 : Part2. 실전 분석편
props 타이핑 방식의 차이점
안녕하세요!변수에 바로 타이핑하는 두번째 방법을 선호한다고 하셨는데요.이 방법으로 하면 뒷부분이 알아서 타입추론된다고 하셨는데 헷갈려서 질문드립니다.뒷부분이 알아서 타입추론된다는 것이P 제네릭이 타이핑된 propTypes, defaultProps들의 타입도 자동으로 추론된다는 것을 말하신 것일까요?interface P {} // 1번 const WordRelay = (props: P) {} // 2번 const WordRelay: FunctionComponent<P> = (props) => {} interface FunctionComponent<P = {}> { (props: P, context?: any): ReactElement<any, any> | null; propTypes?: WeakValidationMap<P> | undefined; contextTypes?: ValidationMap<any> | undefined; defaultProps?: Partial<P> | undefined; displayName?: string | undefined; }
-
미해결자바 프로그래밍 입문 강좌 (renew ver.) - 초보부터 개발자 취업까지!!
비트를 뒤에서부터 읽으셔서 궁금해서 질문드립니다!
25:15 부분보면 자꾸 2진수를 뒤에서부터 읽으시는데앞에서부터 읽어야 하는 거 아닌가 생각합니다.0010이면 공공일공 이런 식으로요.전/반가산기에서 계산할 때 캐리 옮길려면 뒤에서부터 읽으며 계산하는 게 맞긴 한데, 좀 오해의 소지가 있어 보입니다.
-
미해결리눅스 쉘 스크립트 마스터
하드 링크, 심볼릭 링크
안녕하세요. 강의 잘 보고 있습니다. 강의 시청 중 궁금한 점이 몇가지 있습니다.하드 링크는 파일 복사라고 생각하면 되나요..?그렇다면 cp 명령어가 있는데 하드링크를 사용하는 이유는 무엇인가요?심볼릭 링크 생성시 권한이 rwx가 모두 생기는데.. 바로가기 폴더라고하면 원본 폴더의 권한을 따라가야하는거 아닐까요..?만약 10바이트를 가진 A라는 파일을 하드링크하여 B라는 파일을 생성하면 총 20바이트의 사이즈를 차지할 것이라고 생각했는데 맞을까요?3의 예시에서 B를 하드링크가 아닌 심볼릭링크로 생성하게 되면 노출되는 사이즈는 A,B 모두 10바이트로 표현은 되지만 실제 사이즈는 10바이트만 차지하는게 맞을까요?? (링크만 걸어놓은거기때문에)답변 부탁드립니다. 감사합니다!
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
React key prop 오류 케이스 나오시는 분들 보세요
존경하는 그랩님Warning: Each child in a list should have a unique "key" prop 오류 케이스에 대해서 조언좀 구할 수 있을까요? ReactDOM.render 방식이 React 18에서 지원하지 않으면서 오류들을 수정했습니다.//[AS-IS] import ReactDOM from 'react-dom'; ReactDOM.render( <React.StrictMode> <BrowserRouter> <App /> </BrowserRouter> </React.StrictMode>, document.getElementById('root') //[TO-BE] import * as ReactDOM from 'react-dom/client'; const root = ReactDOM.createRoot(document.getElementById("root")); root.render( <React.StrictMode> <App /> </React.StrictMode>); 다만 아래와 같은 오류들이 발생을 하였는데요.구글링에서 찾아보니 각 엘리먼트에 key값을 주는 것으로 해결하라고 하는데요.- 그렇다면 src > main > index.js 에서 각 엘리먼트들에 key 값을 설정해줘야 하나요?- 각 엘리먼트들에 map으로 되어있는 함수를 지우고.. (product, index) 형태를 key={product.id}>{product.imageUrl}key={product.id}>{product.name} 형태로 바꾸어 주어야 하나요?- 조금 어렵게 느껴지네요. 해당 부분처럼 바꾸는게 맞는지 조금 조언 부탁드립니다.현재 제 깃 레파지토리 참조로 첨부드립니다. 도와주세요 ㅠㅠhttps://github.com/promotionX/Grabmarket-clinet
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
싱글톤 질문 드립니다.
강의 교재의 "스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 기본으로 싱글톤으로 등록한다(유일하게 하나만 등록해서 공유한다) 따라서 같은 스프링 빈이면 모두 같은 인스턴스다." 이 문장에서 같은 스프링 빈이면 모두 같은 인스턴스라는 말이 하나의 인스턴스로 자원을 공유한다는 의미 같은데 어떤 경우에 싱글톤을 사용해 자원을 공유하는지 궁금합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
싱글톤패턴에서 질문
18:25쯤에 public static Managers instance {get{init(); return s_instance;}}로 함수에서 프로퍼티로 바꿔서 ()없이 가져오기 편하게 바꾸셧는데 이떄 {}안에 init();을 넣은 이유는 안넣으면 return s_instance;할때 오류가나서 그런가요? 이유를 알고싶어요
-
미해결Slack 클론 코딩[실시간 채팅 with React]
onDragLeave 이벤트
onDragOver를 통해서 화면 안으로 파일을 넣으면 업로드라는 문자가 뜨는데 다시 파일을 밖으로 꺼내도 업로드! 라는 화면이 계속 떠 있더라구요 그래서 onDragLeave를 사용하여 dragover를 false로 만들어줘서 해결하긴 했는데, onDragOver만 사용했을 때는 업로드! 화면이 깜빡이지 않았는데, onDragLeave를 같이 사용하니까 업로드! 화면이 마우스를 움직일 때마다 깜빡이면서 채팅창 부분이 리렌더링 되는데, 더 효율적인 방법이 있을까요??const DM = () => { const [dragOver, setDragOver] = useState(false); const onDragOver = useCallback((e: any) => { e.preventDefault(); setDragOver(true); }, []); const onDragLeave = useCallback((e: any) => { e.preventDefault(); setDragOver(false); }, []); if (!userData || !myData) { return null; } // useSWRInfinite가 2차원 배열이기 때문에 1차원 배열로 만들어서 reverse를 해준다. const chatSections = makeSection(chatData ? [...chatData].flat().reverse() : []); return ( <Container onDrop={onDrop} onDragOver={onDragOver} onDragLeave={onDragLeave}> <Header> <img src={gravatar.url(userData.email, { s: '24px', d: 'retro' })} alt={userData.nickname} /> <span>{userData.nickname}</span> </Header> {/* chatData => 채팅을 DM에 표시해주기 위함 */} <ChatList chatSections={chatSections} ref={scrollbarRef} isEmpty={isEmpty} isReachingEnd={isReachingEnd} setSize={setSize} /> <ChatBox chat={chat} onChangeChat={onChangeChat} onSubmitForm={onSubmitForm} /> {dragOVer && <DragOVer>업로드!</DragOVer>} </Container> ); }; export default DM;코드는 해당되는 부분만 적었습니다.
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
docker pip 설치에서 에러가 뜹니다
강의내용의 pord.txt 가 같은데 에러가 뜨네요 django~=3.0.0 djangorestframework djangorestframework-jwt django-cors-headers django-pydenticon pillow
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
uuid
안녕하세여 ! !ㅎㅎ uuid 말씀하셨는데 ,uuid 사용하는것과 그냥 private Long id 하는것에 차이점은 어떤것이 있을까여 ?? uuid 를 사요하게 되었을때 ,다른곳에서 fk 가져다가사용하게 될때 긴 string 이 fk 걸리니까 불편하지않나 ?? 생각이 드는데여 어떠한 방법을 사용하게 될까요 ??
-
미해결비트코인 암호화폐 자동매매 코인봇 만들기 Part 1 - 무위험 전략 학습하기
upbit api 의 특정 키를 못받습니다. upbit_buy_order.py
upbit_buy_order.py 파일 실행시 오류가 발생되는데요... 시장가 출력 부분입니다. #print('사용자가 입력한 주문 양 :', result['volume']) #print('체결 후 남은 주문 양 :', result['remaining_volume']) result를 찍어보니까 volume 과 remaining_volumn 두 키가 API 에서 못받아 오더군요.지정가에서는 정상적으로 받아오는데 지정가에서는 못받아 오는데 업비트 API 의 문제인가요?아래 에러 코드입니다. 답변 부탁드립니다. 감사합니다. Traceback (most recent call last): File "C:\upbit\upbit_buy_order.py", line 111, in <module> print('체결 후 남은 주문 양 :', result['remaining_volume'])KeyError: 'remaining_volume'
-
미해결최고의 프론트엔드 CSS Frameworks, UIkit
modal 유튜브 동영상 안들어가요
모달 유튜브 동영상 안들어가 져요iframe으로 퍼가기해서 복사해서넣었는데동영상이 안들어가지네요~다른 유튜브동영상도 마찬가지입니다왜그런가요 ??<div id="modal-youtube" uk-modal> <div class="uk-modal-dialog uk-margin-auto-vertical"> <button class="uk-modal-close-outside" type="button" uk-close></button> <iframe width="560" height="315" src="https://www.youtube.com/embed/3adn6-gfbnQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen uk-video></iframe> </div> </div>
-
해결됨[코드팩토리] [입문] Dart 언어 4시간만에 완전정복
[질문] cascading operator 설명하실 때
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ...는 Spread Operator 이고..이 Cascading Operator 아닌가해서 질문드립니다. dart 강의 3강, 32분 쯤에 나오는 내용입니다.
-
미해결예제로 배우는 스프링 입문 (개정판)
age가 화면에 표시가 안됩니다.
오너상세정보에서도 age 부분만 공백입니다.영상에서 하라는대로 똑같이 따라했고 어떤 오류도 안 났습니다.왜이럴까요..
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
EventListener, 프로필
EventListener가 붙어 있는 initData()가 스프링 컨테이너가 초기화를 다 끝내고 , 실행 준비가 되었을 때 발생하는 건 알겠습니다. 그런데 궁금한 건 , 프로필이 = local일 때만 initData()가 실행되는 건가요?프로필이 local이 아닐 때도 initData()가 실행되긴 하는데 testDataInit이 실행이 안되기 때문에 빈으로 등록이 안돼서 오류가 날 것 같은데, 오류는 안 나는 걸로 보아 자동으로 이 오류를 스프링이 처리하는 건지,, 궁금합니다.
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Serial 통신이 아예 안되는 것 같습니다,,,
================== 제가 지금 사용하고 있는 보드는 Z7-10 보드입니다.(중고나라에서 구매했습니다. 여담이지만 판매자분도 맛비님 강좌 수강생이더라구요. 현재는 취업 후에 보드가 필요하지 않아 저에게 판매를 한 상태이구요. 문제를 인지 후에 혹여나 판매자분한테 정보를 얻을 수 있을까 싶어서 추가 연락을 취해봤지만, 답장이 없는 상태입니다,,) Vivado 버전은 2022.2와 2020.2 버전 둘 다 사용해봤습니다. 맛비님 블로그에서 보드 마스터 압축 파일을 다운 받고다음 경로에 설치 했습니다. Vivado 프로젝트 경로입니다.Zynq IP 상태입니다. 3. Vitis 프로젝트 경로입니다. 4. Serial port입니다. 5. 바이티스 코드입니다.scanf도 아니고 그냥 바로 출력하도록 만들었는데도터미널에 아무것도 출력되지 않습니다,, 7. 보드 모습입니다.제가 놓친 부분이 있을까요??Z7-10 보드로 강의 듣는 수강생도 꽤 많아 보이지만 저와 같은 문제를 겪은 사람은 없는 것 같아 보입니다,, 중고 보드의 고장 문제일 수도 있을까요?? ㅠㅠ
-
미해결기초부터 실무까지 Tableau 시각화
섹션 7 overview 세계 지도 시트 구성하기 질문
안녕하세요, 강의 보고 따라하고 있는데 F 기간 필드 다음과 같이 강의대로 생성하고 필터로 이동시 아래와 같이 거짓으로 나오는데 저는 왜 참이 안나올까요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
순환참조 !target설정해도 안되네요? 그냥 @Component로 할까요?
[질문 내용]스프링부트 버전은 2.7.8 입니다.SpringConfig에 @Bean으로 등록 하였구요.TimeTraceAop 클래스에 @Component를 지우고@Aspect만 선언하였습니다.그리고 execute메소드 상단에 @Around("execution(* hello.hellospring..*(..)) && !target(hello.hellospring.SpringConfig)") 위처럼 선언하였습니다.위치도 맞구요서버를 구동하면 다음과 같은 오류가 발생합니다.아래는 TimeTraceAop클래스 전체 코드입니다.이부분에 대한 질문글이 많았던걸 확인하였으며, 그 질문들에 대한 답변과 동일하게 맞춰서 세팅해도 저는 똑같이 순환참조가 발생하네요..!!target이 적용되지 않는건가싶기도하고 잘모르겠네요. 해결방안 있을까요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
Exercise 70 질문드립니다.
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 문제를 풀며 가장 자연스럽게 익숙해지는 파이썬 기본:함수 활용, 13분안녕하세요 :)저는 70번 문제 코드를 def function(a, b): return [a] * bfunction("Fun", 3)이렇게 작성해서 동일한 결과값, ['Fun', 'Fun', 'Fun']이 나왔는데 이 방법도 문제가 없는건가요?