inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

antd Menu toggle device toolbar 질문입니다.

미해결

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

메뉴를 구현하고 모바일버전에서도 확인을 하고싶어서 개발자도구에서 toggle device toolbar를 클릭하고 메뉴의 버튼들을 눌렀는데 이러한 에러가 뜹니다. 그리고 모바일로 접속해서 클릭을 해봐도 동일한 오류가 뜹니다. 이러면은 antd-mobile로 메뉴를 두개로 구성을 해야하나요? 아래는 제 코드입니다. import PropTypes from "prop-types"; import React, { useCallback } from "react"; import Link from "next/link" import {Menu, Input, Row, Col} from "antd"; import UserProfile from "./UserProfile"; import LoginForm from "./LoginForm"; import styled from "styled-components"; import {useSelector} from "react-redux"; import Router from "next/router"; import useInput from "../hooks/useInput"; const InputSearch = styled(Input.Search)` vertical-align: middle; `; const AppLayout = ({ children }) => { const {me } = useSelector((state) => state.user); const [search, changeSearch] = useInput(''); const searchHashtag = useCallback(() => { Router.push(`/hashtag/${search}`); }, [search]); return ( <div> <Menu mode="horizontal"> <Menu.Item key="home"> <Link href={"/"}><a>home</a></Link> </Menu.Item> <Menu.Item key="profile"> <Link href={"/profile"}><a>profile</a></Link> </Menu.Item> <Menu.Item key="search"> <InputSearch enterButton value={search} onChange={changeSearch} onSearch={searchHashtag}/> </Menu.Item> <Menu.Item key="signup"> <Link href={"/signup"}><a>signup</a></Link> </Menu.Item> </Menu> <Row gutter={8}> <Col xs={24} md={6}> {me ? <UserProfile/> : <LoginForm />} </Col> <Col xs={24} md={12}>{children}</Col> <Col xs={24} md={6}><a href="https://velog.io/@mayrang" target="_blank" rel="noreferrer noopener">Made by Mayrang</a> </Col> </Row> </div> ); }; AppLayout.propTypes = { children: PropTypes.node.isRequired, }; export default AppLayout;

  • redux
  • nodejs
  • react
  • express
  • Next.js
건상 댓글 1 좋아요 0 조회수 596

다솜이형... 나의 완패야... 인정할게... (1620 시간초과 관련)

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

어디서 시간이 많이 걸리는지...모르겠습니다 ㅜㅜ 아래는 제가 스스로 짠 코드인데 시간초과가 나왔습니다. 초록 글씨 코드는 강사님 코드 딱 한번 보구 제 방식대로 만들자 해서 비슷하게 따라하려 했는데 또 시간초과가 나옵니다 ㅠ 제가 처음 짠 검은 글씨 코드는 입력을 받자마자 출력을 하는게 아니라 입력 다 받구나서 마지막에 몰아서 출력시키는게 원인같은 의심이라도 드는데, 강사님 코드 보구 짠 초록글씨는 왜 시간초과가 나는지 너무 궁금하고 억울(?)합니다. #include<bits/stdc++.h> using namespace std; int N, M; map<int, string> dogam; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> N >> M; string name; for (int i = 1; i <= N; i++) { cin >> name; dogam.insert(make_pair(i, name)); } string Q; multimap<int, string> A; for (int i = 1; i <= M; i++) { cin >> Q; if (isdigit(Q[0])) { //숫자가 들어올때 , A.insert(make_pair(i, dogam.find(stoi(Q))->second)); } else {//질문이 문자인경우 for (auto it = dogam.begin(); it != dogam.end(); it++) { if (it->second == Q) A.insert(make_pair(i, to_string(it->first))); } } } for (auto it = A.begin(); it != A.end(); it++) // 출력을 받자마자 하는게 아니라 여기서 몰아서 했습니다.. cout << it->second<< "\n"; } #include <bits/stdc++.h> using namespace std; int N, M; string input; map<int, string> dogam_byint; map<string, int> dogam_bystr; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> N >> M; for (int i = 1; i <= N; i++) { cin >> input; dogam_byint.insert(make_pair(i, input)); dogam_bystr.insert(make_pair(input, i)); } for (int i = 1; i <= M; i++) { cin >> input; if (isalpha(input[0])) cout << dogam_bystr.find(input)->second << endl; else cout << dogam_byint.find(stoi(input))->second << endl; } }

  • 시간초과
  • 코테 준비 같이 해요!
  • C++
go122345 댓글 1 좋아요 0 조회수 183

궁금한 점 질문 드립니다~

미해결

만들면서 배우는 프론트엔드 DO IT 코딩 (Next.js, Typescript)

1. memberDoc에 사용자가 이미 추가된 상태인지를 판별해서 addResult 이후에 성공 코드(200, 201)를 리턴하는 방식 대신 트랜잭션 콜백 안에서 성공 코드를바로 리턴하는 방식을 사용하지 않는 이유가 있을까요? 코드로 표현하면 아래와 같습니다. await firebaseInstance.Firebase.runTransaction(async (transaction) => { const memberRef = firebaseInstance.Firebase.collection('members').doc(uid); const screenName = (email as string).replace('@gmail.com', ''); const screenNameRef = firebaseInstance.Firebase.collection('screen_names').doc(screenName); const memberDoc = await transaction.get(memberRef); if (memberDoc.exists) { // 이미 추가된 상태 return res.status(201).json({ result: true, id: uid }); } await transaction.set(memberRef, addData); await transaction.set(screenNameRef, addData); return res.status(200).json({ result: true, id: uid }); }); 2. screenName을 알기 위해 위해 screen_names라는 컬렉션을 새로 추가하셨는데, 컬렉션을 추가하지 않고 members 컬렉션을 uid로 조회한 뒤 해당 도큐먼트의 email값을 이용하는 방법을 이용하지 않는 이유가 있을까요?

  • Next.js
페이커 댓글 2 좋아요 0 조회수 220

api를 만든후

미해결

C#으로 로그인 가능한 앱 구현하기 Xamarin 자마린 폼즈 (안드로이드, 윈도우)

api를 만든후 exe 파일로 뽑아야 하는데요 게시를 해도 exe파일은 보이질 않는데 폴더로 게시로 하는게 아닌건지요

  • C#
  • 하이브리드 앱
  • Xamarin
slam_poet 댓글 1 좋아요 0 조회수 313

아니 왜 갑자기 엣지 지원이 안되는건가요

미해결

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

크롬안쓰는 엣지유저로서 맘이 아픕니다.

  • 엣지
  • 코테 준비 같이 해요!
  • python
DongHwan Park 댓글 1 좋아요 1 조회수 414

교재 파일 문의

미해결

ARM Cortex-M 프로세서 프로그래밍

안녕하세요! 제가 잘 못찾겠어서 문의드립니다. 혹시 강의 자료가 pdf로 제공된다고 알고 있는데 자료는 어디 있을까요? TRM과 같은 문서 밖에 보이지 않아서요! 감사합니다.

  • cortex
  • 임베디드
  • arm-architecture
FiveGuys 댓글 3 좋아요 1 조회수 418

img파일이 제대로 확인되지 않습니다.

미해결

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

위의 사진처럼 코드를 작성한 후 결과물을 확인하면 상품이미지가 출력되지 않습니다. 혹시 어떤점을 제가 실수하였을까요?

  • javascript
  • express
  • react-native
  • tensorflow
  • HTML/CSS
  • 머신러닝 배워볼래요?
  • react
  • nodejs
최진혁 댓글 2 좋아요 0 조회수 242

watchSchedules에서 쿼리를 옮길때 toUtc() 조건은 빠져 있습니다.

미해결

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

StreamBuilder에서 필터링할때는 toUtc()를 사용해서 타임존을 일치 시켜서 비교했는데 8:55 쯤에 작성된 쿼리에는 이 조건이 사라져 있습니다. 여기서는 타입이 GeneratedColumn이라서 같은 방법으로 써지지 않는데 어떻게 하면 되나요?

  • Flutter
  • 클론코딩
dh.kang 댓글 1 좋아요 1 조회수 253

10.18 질문입니다.

미해결

홍정모의 따라하며 배우는 C언어

include <stdio.h> #define COLS 4 int sum_1d(int arr[], int n); int sum_2d(int arr[][COLS], int rows); int main() { int a = 1; 3; //Literals are constants that aren't symbolic 3.14f; int b[2] = { 3,4 }; (int[2]) {3, 4};//compound literal //int c[2] = (int[2]){ 3,4 }; //error int arr1[2] = { 1,2 }; int arr2[2][COLS] = { {1,2,3,4},{5,6,7,8,} }; printf("%d\n", sum_1d(arr1, 2)); printf("%d\n", sum_2d(arr2, 2)); printf("\n"); printf("%d\n", sum_1d((int[2]) { 1, 2 }, 2)); printf("%d\n", sum_2d((int[2][COLS]){ {1,2,3,4},{5,6,7,8} }, 2)); printf("\n"); int* ptr1; int(*prt2)[COLS]; ptr1 = (int[2]){ 1,2 }; ptr2 = (int[2][COLS]){ {1,2,3,4},{5,6,7,8,} }; printf("%d\n", sum_1d(ptr1, 2)); printf("%d\n", sum_2d(ptr2, 2)); printf("\n"); return 0; } int sum_1d(int arr[],int n) { int total = 0; for (int i = 0; i < n; ++i) total += arr[i]; return total; } int sum2d(int arr[][COLS], int rows) { int total = 0; for (int r = 0; r < rows; r++) for (int c = 0; c < COLS; c++) total += arr[r][c]; return total; } 저는 다 그대로 입력한거같은데 도대체 왜안되는거죠?

  • c
10leomessii 댓글 1 좋아요 0 조회수 244

Props type 질문드립니다.

미해결

웹 게임을 만들며 배우는 React에 TypeScript 적용하기

const Try: FunctionComponent<{tryInfo: TryInfo}> = ({ tryInfo }) => {...} 대신에 const Try = ({ tryInfo } : TryInfo) => {...} 로 써도 될까요? 둘 중 뭐가 많이 쓰이나요?

  • react
  • typescript
바스니카 댓글 1 좋아요 0 조회수 258

질문드립니다

미해결

[신규 개정판] 이것이 진짜 크롤링이다 - 기본편

import requests from bs4 import BeautifulSoup from openpyxl import Workbook keyword = input("검색어를 입력하세요") lastpage = input("마지막 페이지 번호를 입력해 주세요") pageNum = 1 for i in range(1, int(lastpage) * 10, 10): print(f"{pageNum}페이지 입니다.~~~~~~~~~~~~~~~~~") response = requests.get(f"https://search.naver.com/search.naver?sm=tab_hty.top&where=news&query={keyword}&start={i}") html = response.text soup = BeautifulSoup(html, 'html.parser') links = soup.select(".news_tit") wb = Workbook() ws1 = wb.active ws1.title = "연습" ws1.append(["제목", "링크"]) print(links) for link in links: title = link.text url = link.attrs['href'] print(title, url) ws1.append([title, url]) pageNum = pageNum + 1 wb.save(filename='연습.xlsx') 네이버 기사 제목과 url 수집한 걸 엑셀에 옮겨보려고 합니다. 터미널에서는 마지막 페이지 번호 입력를 4로 했다고 하면 총 40개의 제목과 링크가 나타나는데 엑셀에는 옮겨지기는 하는데 10개의 기사 제목, 링크만 옮겨집니다. 어떻게 수정해주어야 할까요?

  • python
  • 웹-크롤링
erin del 댓글 1 좋아요 1 조회수 231

findByID 소스 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. Class 'JdbcMemberRepository' must either be declared abstract or implement abstract method 'findById(Long)' in 'MemberRepository'라고 오류가 뜹니다. @Override public Optional<Member> findByName(String name) { String sql = "select * from member where name = ?"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); rs = pstmt.executeQuery(); if(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); return Optional.of(member); } return Optional.empty(); } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } 이런식으로 findByID가 정의 되있는데에도 계속 오류가 뜨네요 어떻게 해야될까요 ㅠㅠ

  • MVC
  • java
  • spring-boot
  • spring
찬솔 댓글 3 좋아요 0 조회수 498

빌더의 장점

미해결

호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 빌더 관련 설명에서 궁금한점 질문 드립니다. 빌더 장점 중 객체의 불변성 이야기 해주셨는데요, 멤버변수 final로 선언하고, 만약 변경 시 빌더를 이용해서 새로운 객체를 리턴하는것을 말씀하시는 걸까요? 감사합니다.

  • vuejs
  • Spring Security
  • aws
  • spring-boot
  • JPA
성재우 댓글 1 좋아요 0 조회수 379

제이쿼리 질문있습니다

미해결

[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드

선생님 보이기를 눌렀을 때 '태그 선택자 a를 클릭했습니다' 는 딱 보이는데 감추기가 안됩니다 ㅠ 뭐가 문제일까요? - 다운로드가 필요한 파일은 해당 강의의 마지막 섹션에 모두 있습니다.

  • jquery
  • HTML/CSS
  • 웹 디자인
kmj77877 댓글 1 좋아요 1 조회수 211

안녕하세요 Teable Calendar 라이브러리 header 부분을 커스텀 하고싶어서 질문 드립니다.

미해결

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

https://pub.dev/documentation/table_calendar/latest/table_calendar/HeaderStyle-class.html 켈린더 헤더를 저렇게 커스텀해서 만들고 싶습니다. 공식 문서를 봤는데 그에 관련된 속성이 없는것 같아서... 질문 남깁니다... 아이콘을 추가하고싶습니다... 만약 추가가 안된다면 켈린더의 헤더부분을 안보이게 한다음 바디 위에 Row를 추가해서 넣어야 할까요?

  • Flutter
  • 클론코딩
사당동 댓글 1 좋아요 0 조회수 812

연관관계 매서드

미해결

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

Member클래스에서 연관관계 매서드 작성시 빨간글씨와 빨간 밑줄이 생깁니다. 심볼 'member'을(를) 해결할 수 없습니다 심볼 'orderItems'을(를) 해결할 수 없습니다 심볼 'delivery'을(를) 해결할 수 없습니다

  • 웹앱
  • spring-boot
  • spring
  • java
  • JPA
smu lookie 댓글 1 좋아요 0 조회수 194

강의랑 별개로 SQLite와 관련된 질문도 괜찮을까요?

미해결

C# Xamarin Forms 자마린 폼즈 API 강의 + 간단한 API 만들기

메모장 어플을 시험삼아 만들어 보고 있습니다 정보를 입력한 뒤 저장 버튼을 누르고 Datetime.Now를 이용해 항목에 대한 작성 당시 현재시간을 표시하고싶은데 어디에 Datetime.Now를 지정해야되는지 잘 모르겠습니다. 일단 new ProductInfo로 지정해야되는거같긴 한데 잘 안되네요... 밑에처럼 작성하면 product1이 활성화가 안되고 위의 product를 지우면 아예 없어져버리고 다른 방법은 생각이 잘 나질 않아요... private async void OnSave() { var product = ProductInfo; var product1 = new ProductInfo { TimeTodo = DateTime.Now }; await App.ProductService.AddProductAsync(product); await Shell.Current.GoToAsync(".."); }

  • web-api
  • Xamarin
이수종 댓글 1 좋아요 0 조회수 336

데이터베이스 설계시 INT , TINYINT , SMALLINT 이런 걸 선택하는 게 중요한가요?

미해결

데이터베이스 중급(Modeling)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 자바로 예를 들자면 옛날에는 최적화를 위해 float, int같은 작은 단위들을 최대한 고려했었는데 컴퓨터 성능의 향상과 네트워크 속도 향상 저장 공간의 비용 절감 등의 이유로 지금은 거의 조금이라도 애매하면 모두 long, double을 선언해버리고 쓰는 것으로 알고 있습니다 마찬가지로 데이터베이스에서도 현실적으로 몇 바이트를 아끼기 위해 TINYINT같은 타입들을 사용하는 것이 크게 중요하지는 않은 일인가요? 아니면 수백수천만의 저장 데이터들이 들어오기 때문에 이런 부분까지도 신경써줘야 하는 것인가요? 실무에 계신 분의 의견이 궁금합니다 그리고 별개의 이야기지만 제가 인프런에서 들은 강의 중 가장 만족스럽고 너무 귀에 쏙쏙 박히는 강의입니다. 좋은 강의 만들어주셔서 감사합니다!

  • DBMS/RDBMS
  • 데이터 엔지니어링
euni 댓글 1 좋아요 1 조회수 719

expo-cli 설치 에러

해결됨

처음 배우는 리액트 네이티브

현재 windows10을 이용중이고, cmd에서 'npm install -g expo-cli'라고 입력하였을 때 설치되다가 마지막에 이러한 에러가 나옵니다. 이럴 땐 어떻게 해결해야하나요? npm ERR! code EEXIST npm ERR! path C:\Users\tlsl1\AppData\Roaming\npm\node_modules\expo-cli\bin\expo.js npm ERR! dest C:\Users\tlsl1\AppData\Roaming\npm\expo npm ERR! EEXIST: file already exists, cmd shim 'C:\Users\tlsl1\AppData\Roaming\npm\node_modules\expo-cli\bin\expo.js' -> 'C:\Users\tlsl1\AppData\Roaming\npm\expo' npm ERR! File exists: C:\Users\tlsl1\AppData\Roaming\npm\expo npm ERR! Remove the existing file and try again, or run npm npm ERR! with --force to overwrite files recklessly. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\tlsl1\AppData\Roaming\npm-cache\_logs\2022-07-22T12_23_48_523Z-debug.log

  • react-native
  • javascript
댓글 1 좋아요 0 조회수 858

인기 태그

인프런 TOP Writers

주간 인기글