묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[ 부트스트랩 5 ] 빠르고 스마트하게 웹 사이트 만들기 | Bootsrap 입문용
예제파일이 모두 빈 파일입니다.
예제파일 다운로드 하였으나 모두 빈파일입니다.
-
해결됨스프링 시큐리티
스프링부트3.1 / 시큐리티6.1 관련하여 문의드립니다.
http.authorizeRequests() .requestMatchers(new AntPathRequestMatcher("/")).permitAll() // 기본 경로는 로그인을 안하고도 볼 수 있어야함 .requestMatchers(new AntPathRequestMatcher("/mypage")).hasRole("USER") //유저 권한이 있는 사람만 접근 가능 .requestMatchers(new AntPathRequestMatcher("/messages")).hasRole("MANAGER") .requestMatchers(new AntPathRequestMatcher("/config")).hasRole("ADMIN") .anyRequest().authenticated() .and() .formLogin(); return http.build(); @Bean static final public InMemoryUserDetailsManager kk() { //DB연동을 안할 경우, 테스트 용으로 하는 것이다. UserDetails user = User.withDefaultPasswordEncoder() .username("user") .password("1111") .roles("USER") .build(); UserDetails admin = User.withDefaultPasswordEncoder() .username("admin") .password("1111") //.roles("ADMIN","USER") .roles("ADMIN") .build(); UserDetails manager = User.withDefaultPasswordEncoder() .username("manager") .password("1111") .roles("MANAGER") .build(); return new InMemoryUserDetailsManager(user, admin, manager); // 아래는 컨트롤러 입니다. @GetMapping("/") public String getInts() { System.out.println("path: / /n"); return "index"; } @GetMapping("/mypage") public String getInt23() { System.out.println("path: /mypage /n"); return "index"; } @GetMapping("/config") public String getInt45() { System.out.println("path: /config /n"); return "index"; } 안녕하세요 해당 config파일 설정에 의하여 프로젝트는 문제 없이 잘 돌아가고는 있습니다.하지만, 초기 경로 "/" 으로 갈때에는 모두 허용이라는 permitAll()이 작동하기 전에 무조건 시큐리티 내장 "/login" 페이지로 이동 후, 아이디/비밀번호 입력시 "/" 경로를 타게 됩니다. /login을 거치지 않도록 하기 위한 방법이 있을까요? https://drive.google.com/file/d/1DljHlHOwmlCuiFrCh5NMB5TfYhMh23Bj/view?usp=sharing해당 링크는 크롬 브라우저에서 페이지 테스트한 영상입니다!!
-
미해결세상을 바꿀 Web3 개발자 시리즈 1 (블록체인, 리믹스, 리액트, web3.js)
여러가지 문의 드립니다.
질문1. Game과 이더 단위 관련 리액트 연결시 int, uint에 대한 값을 리액트에서 가져오지 못합니다. 다른 에러창도 없이 빈칸 입니다. 질문2. Bank 관련 강의 중 input에 대한 메타마스크 트랜잭션이 실패합니다. 참고 이미지 밑에 올려 두었습니다.리믹스 ide에서는 이상없이 트랜잭션 됩니다. 차이점이라고하면 트랜잭션 승인 창에 주소밑에 보이는 "계약상호작용" 부분이 리믹스와 강의에서는 "DEPOSIT"으로 보입니다. 질문3. 리액트에서 한글이 깨집니다.강의에서는 다른 설정 없이도 한글이 잘나오네요.. 다른 설정이 있나요? 답변 부탁드립니다! 열공하겠습니다~!
-
해결됨[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
크롤링 기사 기간 설정
안녕하세요뉴스크롤링에서 크롤링 하고자 하는 뉴스의 기간을 정해주려면response = requests.get("https://search.naver.com/search.naver?where=news&sm=tab_jum&query=검색어") 위 코드의 " " 안에 뉴스기간을 옵션으로 설정하여 검색한 페이지의 URL을 긁어서 넣어주면 되는걸지요? 감사합니다.
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
코드가 작동이 되었다가 다시 안되는데요 ㅠㅠ
분명히 작동을 잘 했었는데,제가 어디서 잘못을 한것인지 아래와 같은 에러가 반복해서 발생합니다.startcoding/Chapter04/11.마지막페이지확인하기.py", line 62, in <module>print("=======링크======= \n", url)^^^NameError: name 'url' is not defined 강의를 뒤로가서 다시 작성해봐도... 이제는 02.본문내용스크롤부터 에러가 발생하고, Chapter04/02.뉴스본문내용크롤링하기.py", line 17, in <module>print(content.text)^^^^^^^^^^^^AttributeError: 'NoneType' object has no attribute 'text'"10.크롤링결과엑셀저장하기"에서도 돌아가다가 2페이지부터 이런 에러가 발생합니다. startcoding/Chapter04/10.크롤링결과엑셀저장하기.py", line 63, in <module> print("=======제목======= \n", title.text.strip()) ^^^^^^^^^^AttributeError: 'NoneType' object has no attribute 'text'제가 도대체 어디를 잘못하고 있는 걸까요 ㅠㅠ import requestsfrom bs4 import BeautifulSoupimport time # Time module 불러오기import pyautoguifrom openpyxl import Workbookfrom openpyxl.styles import Alignment# 사용자입력푸드keyword = pyautogui.prompt("검색어를 입력하세요")lastpage = int(pyautogui.prompt("몇 페이지까지 크롤링 할까요?"))# 엑셀 생성하기wb = Workbook()# 엑셀 시트 생성하기ws = wb.create_sheet(keyword)# 열 너비 조절ws.column_dimensions['A'].width = 60ws.column_dimensions['B'].width = 60ws.column_dimensions['C'].width = 120# 행번호row = 1# 페이지번호page_num = 1for i in range(1, lastpage * 10, 10):print(f"{page_num}페이지 크롤링 중입니다.===============")response = requests.get(f"https://search.naver.com/search.naver?where=news&ie=utf8&sm=nws_hty&query={keyword}&start={i}")html = response.textsoup = BeautifulSoup(html, 'html.parser')articles = soup.select("div.info_group") # 뉴스 기사 div 10개 추출(ctrl+F, div.info_group 검색후 10개로 확인)for article in articles:links = article.select("a.info") # 리스트: a 태그인데, class가 info인 것들 가지고 오기if len(links) >= 2: # 링크가 2개 이상이면url = links[1].attrs['href'] # 두번째 링크의 href를 추출response = requests.get(url, headers={'User-agent':'Mozila/5.0'})html = response.textsoup = BeautifulSoup(html, 'html.parser')# 연예 뉴스 체크if "entertain" in response.url:title = soup.select_one(".end_tit")content = soup.select_one("#articeBody")elif "sports" in response.url:title = soup.select_one("h4.title")content = soup.select_one("#newsEndContents")# 본문 내용 안에 불필요한 div 삭제 (기사 본문 이후 내용들)divs = content.select("div")for div in divs:div.decompose()paragraphs = content.select("p")for p in paragraphs:p.decompose()else:title = soup.select_one(".media_end_head_headline")content = soup.select_one("#newsct_article")print("=======링크======= \n", url)print("=======제목======= \n", title.text.strip())print("=======본문======= \n", content.text.strip())ws[f'A{row}'] = urlws[f'B{row}'] = title.text.strip()ws[f'C{row}'] = content.text.strip()# 자동 줄바꿈ws[f'C{row}'].alignment = Alignment(wrap_text=True)row = row + 1time.sleep(0.3) # 프로그램을 0.3초 정도 휴식 주기 (서버 부담 줄여주기, 프로그램 안정성 up)page_num = page_num + 1wb.save(f'{keyword}_result.xlsx')
-
해결됨넓고 얕게 외워서 컴공 전공자 되기
동시성과 병렬성의 예시
동시성이 하나의 코어안에 여러 일을 동시에 가능(번갈아가면서)병렬성이 여러 주체가 하나의 일을 동시에 진행하는 것이 정의인데 만약에주체가 여러 명(멀티코어)이고 똑같이 여러 일을 동시에 한다면 ex)동일하게 인프런 시청 그리고 program 다운로드 등(멀티 쓰레드) 하는 것은 가능한가요?동시성 범주안에 병렬성이 들어갔다고 말씀하셔서, 예시가 맞는 지 판단해주시면 감사합니다!
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Autowired를 생략할 수 있는 이유
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]2:00 부분에서 "생성자가 하나만 있으면 @Autowired를 생략할 수 있다"라고 하셨는데그런 이유가 아니더라도 SpringConfig에 MemberRepository가 스프링 빈으로 등록이 되어 있으니, 그것의 구현체인 JdbcTemplateMemberRepository의 생성자에@Autowired를 붙이지 않아도 되는 거 맞나요?예전 강의에서 SpringConfig에 등록된 MemberService 등은, MemberService 클래스에서 @Service, @Autowired를 지웠던 기억이 있어서 그렇습니다.
-
미해결비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
링크 질문입니다.
혹시 유튜브가 아닌 네이버 map 링크나 blog 주소를 가져오려면 어떻게 해야 할까요???
-
미해결[리뉴얼] SQL 베이스캠프
PHP+MYSQL 게시판 만들기 실습 업데이트 오류
노션 코드 그대로 따라 쳤는데 1,2,3 리스트가 안떠요제가 mysql에 비밀번호를 따로 설정하지 않고 enter만 쳐서 들어갔는데 이 문제일까요? 이 문제가 아니라면 따로 html코드를 작성해서 실습 진행해도 되나요?
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
안녕하세요! 왜 h2를 이용하면 중형 테스트로 보게 되는걸까요??
중형 테스트는 멀티 스레드, 멀티 프로세스를 허용하는 테스트라고 이해했는데 그 설명을 하시면서 "멀티 프로세스와 멀티 스레드를 사용할 수 있는 완화조건이 생기죠. 이는 다시 말해 h2 같은 테스트용 DB를 사용할 수 있게 된다는 의미입니다." 라고 하셔서요! 혹시 h2를 사용하려면 멀티 스레드나 멀티 프로세스 환경에 있어야 한다고 이해해도 되는걸까요? "h2는 멀티 스레드, 멀티 프로세스 환경에 있어야 하기 때문에 h2를 사용하는 순간 중형 테스트로 보면 된다"로 이해하면 될까요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jdbc:h2:tcp://localhost/~/test로 연결시 오류가 발생합니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요.최초로 jdbc:h2:~/test로 연결을 실행 한 뒤~/test.mv.db 파일 생성을 확인하였습니다.그러고 영한님께서 말씀해주신 대로jdbc:h2:tcp://localhost/~/test로 연결했더니 다음과 같은 오류가 발생하네요.. 해결방안 답변해주시면 감사하겠습니다.참고로 h2 버전은 강의와 같은 버전을 사용하였습니다. +) 추가로 삭제 후 동일버전, 하위버전으로 재설치도 해보았는데 여전히 같은 오류가 발생합니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
생성자 주입 방법이 아닌 필드 주입 방법일 때 @Autowired
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]컴포넌트 스캔과 자동 의존 관계 설정 방법을 통했을 때는 MemberService가 아래 코드와 같았었는데@Service public class MemberService { private final MemberRepository memberRepository; @Autowired public MemberService(MemberRepository memberRepository) { this.memberRepository = memberRepository; } } MemberService를 SpringConfig에 등록한 이후로는 아래 코드와 같이 @Service와 @Autowired를 지웠잖아요?public class MemberService { private final MemberRepository memberRepository; public MemberService(MemberRepository memberRepository) { this.memberRepository = memberRepository; }이 경우엔 생성자 주입 방식의 경우인데 만약 필드 주입 방식을 사용한다면 @Autowired를 어떻게 해야 하나요? 1) 컴포넌트 스캔과 자동 의존 관계 설정 방법일 땐 필드에 @Autowired를 붙이고@Service public class MemberService { @Autowired private MemberRepository memberRepository; } 2) 자바 코드로 직접 스프링 빈 등록하기 방법(SpringConfig에 등록)일 땐 필드에 @Autowired를 붙이지 않아도 되나요?public class MemberService { private MemberRepository memberRepository; }
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
socketio 질문 있습니다.
안녕하세요. 마이크로 서비스를 만들어 보고있습니다. 서버끼리는 gRPC 통신을 사용하고, 클라이언트는 게이트웨이를 통해서 HTTP통신을 하는 형태로 만들고있습니다.요구사항은 이제 어느정도 다 구현이 된 상태인데요. 데이터베이스의 데이터를 모두 보여주는 화면에서 새로운 데이터가 입력됐을때 실시간으로 보여주기 위해서 웹 소켓을 사용하려고 합니다.그래서 게이트웨이에 웹소켓 게이트웨이를 추가했습니다. import { Inject, OnModuleInit } from '@nestjs/common'; import { MessageBody, SubscribeMessage, WebSocketGateway, WebSocketServer, } from '@nestjs/websockets'; import { Server } from 'socket.io'; import { CounselServiceClient } from './../../../proto/src/counsel'; import { ClientGrpc } from '@nestjs/microservices'; import { firstValueFrom } from 'rxjs'; @WebSocketGateway({ cors: { origin: '*' } }) export class EventsGateWay implements OnModuleInit { counselService: CounselServiceClient; constructor(@Inject('COUNSEL_PACKAGE') private clientCounsel: ClientGrpc) {} onModuleInit() { this.counselService = this.clientCounsel.getService<CounselServiceClient>('CounselService'); } @WebSocketServer() server: Server; @SubscribeMessage('getAllCounselAdmin') async getAllCounselAdmin() { const result = await firstValueFrom( this.counselService.getAllCounselAdmin({}) ); this.server.emit('allCounselAdminData', result); } @SubscribeMessage('getCounselAdmin') async getCounselAdmin(@MessageBody() data: any) { const counselId = data.counselId; const result = await firstValueFrom( this.counselService.getCounselAdmin({ counselId }) ); this.server.emit('counselData', result); } }이게 지금 웹소켓 게이트웨이의 코드입니다. 클라이언트와 연결하기 위해서'use client'; import { useEffect, useState } from 'react'; import { CounselProto } from './../../../proto/src/counsel'; import axios from 'axios'; import Long from 'long'; import Link from 'next/link'; import { io } from 'socket.io-client'; export const statusInfoMap: { [key: number]: string } = { 1: '', 2: '', 3: '', 4: '', 5: '', }; export default function GetAllCounselByAdmin() { const [counselData, setCounselData] = useState<CounselProto[]>([]); const [isLoading, setIsLoading] = useState(false); useEffect(() => { const socket = io('http://localhost:3000'); socket.on('connect', () => { console.log('Connected to the server'); }); socket.on('allCounselAdminData', (data) => { console.log('Received data: ', data); setCounselData(data); }); socket.on('disconnect', () => { console.log('Disconnected from the server'); }); return () => { socket.disconnect(); }; }, []); return ( <div> {isLoading ? ( <p>Loading...</p> ) : ( <> <h1>모든 상담 내역 조회</h1> <table> <thead> <tr> <th>[상담 기록 번호]</th> <th>[상담 접수 내용]</th> <th>[상담 진행 상황]</th> <th>[상담 접수 날짜]</th> <th>[고객 고유 번호]</th> <th>[고객 성함]</th> <th>[고객 연락처]</th> </tr> </thead> <tbody> {counselData?.map((item, i) => ( <tr key={i}> <td> <Link href={`/admin/counsel/${item.counselId}`}> {item.counselId} </Link> </td> <td>{item.content}</td> <td>{statusInfoMap[item.statusInfo]}</td> <td>{item.createdAt.toLocaleString()}</td> <td>{item.counselUserId}</td> <td>{item.name}</td> <td>{item.phone}</td> </tr> ))} </tbody> </table> </> )} </div> ); }이렇게 적고 서버를 실행해서 해당 페이지에 접속을 하니까 콘솔에 Connected to the server라고는 뜨는데, 데이터가 꽂히지 않고있습니다.서버로 부터 데이터를 못 받아오고있는것같은데요. 어떤 부분을 손대야할지 모르겠습니다. 해당 소켓 게이트웨이는 공식문서를 참고해서 적었습니다..
-
미해결그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
A.11.018. kDbench 실행 오류 질문입니다.
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다![질문 전 답변]1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요]2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요]3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요](https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.5. vagrant up 에서 발생하는 문제는 주로 호스트 시스템(Windows, MacOS)과 연관된 다양한 조건에 의해 발생합니다. 따라서 이를 모두 제가 파악할 수 없어서 해결이 어렵습니다. vagrant up으로 진행이 어렵다면 제공해 드리는 가상 머신(VM) 이미지를 import해서 진행하시기 바랍니다. (https://www.inflearn.com/questions/992407/comment/281901)6. ARM 계열의 m1 , m2 계열은 VirtualBox를 통한 구성이 원할하지 않고, 실습 환경의 다변화는 추후 대처하기 어려워서 현재 과정에서는 지원하지 않습니다. (https://www.inflearn.com/questions/915529) [질문 하기]안녕하세요? 먼저 좋은 강의 제공해 주셔서 감사합니다. 정말 많이 배우고 있습니다. 저는 개인적으로 프로젝트를 해보려고 현재 쿠버네티스 클러스터를 구성중입니다. ESXi 호스트와 Synology NAS로 인프라를 구성중입니다.Ubuntu 20.04.6 LTS / Kubernetes 1.26.1 / Containerd 1.6.22 / Calico 3.24.3 버전을 사용중입니다. kbanch 명령어를 시행하면 퍼미션 문제가 있어 sudo로 진행하려고 아래와 같이 명령어를 치니 오류가 발생합니다. I$ sudo kdbench managed-nfs-storageE0921 23:38:12.683467 153026 memcache.go:238] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp 127.0.0.1:8080: connect: connection refusedE0921 23:38:12.683708 153026 memcache.go:238] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp 127.0.0.1:8080: connect: connection refusedE0921 23:38:12.684940 153026 memcache.go:238] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp 127.0.0.1:8080: connect: connection refusedE0921 23:38:12.686207 153026 memcache.go:238] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp 127.0.0.1:8080: connect: connection refusedE0921 23:38:12.687548 153026 memcache.go:238] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp 127.0.0.1:8080: connect: connection refusedThe connection to the server localhost:8080 was refused - did you specify the right host or port?물론 현재 API 서버 호출은 잘 되는 상태인데 갑자기 왜 로컬 호스트에 8080을 호출하면서 안된다고 하는지 모르겠습니다. 도움 간절히 기다립니다. 감사합니다.
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
SRT Rotate 부분 값이 이상한 것 같습니다
1번값이 나오려면 2번에서 s와 -s가 바뀌어야 하는것 아닌가요? 1번의 X = xcos - ysin 이 나와야 하면 v와 M의 첫번째 행을 곱해야 X가 나오는데지금의 RotationZ행렬은 xcos + ysin이 나올것 같은데요...
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
뉴스 기사 크롤
위 페이지에서 기사 제목: 김혜수 "실패 없을 것 같은 내 이력..."<span class="text">를 출력하고자 합니다. select를 이용해서 출력하고자 하는데, 어떤 것이 잘못되었는지 모르겠습니다. items = soup.select('ol#topViewArticlesContainer p.title span.text') ol id가 topViewArticlesContainer 밑에p 태그의 class가 title인 것의 밑에span 태그의 class가 text인 것을 뽑으려고 했는데,, 어떤게 잘못 된건지 알 수 있을까요?
-
미해결언리얼 엔진4 입문 (C++ 기반)
델리게이트 함수를 쓰고 플레이버튼 실행시 언리얼이 꺼집니다
델리게이트 함수를 쓰면 코드상에 오류가 없고컴파일도 되는데 플레이버튼을 누르면 크래시가 나면서 언리얼이 꺼집니다UE4Editor_gameFramework!TMulticastScriptDelegate<FWeakObjectPtr>::Add() [C:\Program Files\Epic Games\UE_4.26\Engine\Source\Runtime\Core\Public\UObject\ScriptDelegates.h:324]UE4Editor_gameFramework!AMyCharacter::BeginPlay() [C:\Users\plusu\OneDrive\gameFramework\Source\gameFramework\MyCharacter.cpp:43]UE4Editor_EngineUE4Editor_EngineUE4Editor_EngineUE4Editor_EngineUE4Editor_EngineUE4Editor_UnrealEdUE4Editor_UnrealEdUE4Editor_UnrealEdUE4Editor_UnrealEdUE4Editor_UnrealEdUE4Editor_UnrealEdUE4Editor_UnrealEdUE4Editor_UnrealEdUE4EditorUE4EditorUE4EditorUE4EditorUE4Editorkernel32ntdll 뭐가 문제일까요...??
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장 요청드립니다..!
안녕하세요. 강사님.직장과 병행하다보니 잊고 있었는데 수강기간이 거의 만료됐네요..죄송하지만 10월달에 자격증 도전하려고 하는데 수강 연장 가능할까요!
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
캘린터만들기 오류질문입니다.
수업을 계속 반복해서 암기하고 있습니다.달력 수업도 현재까지 10번 이상 반복하고 있는 것 같은데요,일주일전만해도 잘 완성됐었습니다.그런데 오늘 flutter pub run build_runner build를 하려고 하니, g.dart 파일 생성이 안되고 이렇게 에러가 뜹니다.버전 문제인가 싶어 flutter upgrade도 해보고 여러 세팅값들을 버전에 맞도록 업그레이드 시도해봤는데 그래도 여전히 같았습니다.혼자 해결방법을 찾으려고 몇시간째 서치해봤는데 방법을 못찾겠네요, 조언 부탁드립니다. PS C:\Users\haK\StudioProjects\calendarmaking> flutter pub run build_runner buildDeprecated. Use dart run instead.Resolving dependencies... (1.0s)Got dependencies.Building package executable... (6.8s)Failed to build build_runner:build_runner:../../AppData/Local/Pub/Cache/hosted/pub.dev/watcher-1.0.2/lib/src/constructable_file_system_event.dart:7:57: Error: The class 'FileSystemEvent' can't be extended, implemented, or mixed in outside of its library because it's a sealed class.abstract class _ConstructableFileSystemEvent implements FileSystemEvent {
-
미해결[리뉴얼] 타입스크립트 올인원 : Part1. 기본 문법편
11:48초 부분 질문입니다.
interface A { talk: () => void; } const a: A = { talk() { return 3; } // 타입스크립트는 메서드의 void니까 리턴값 3을 무시해버린다. } const b = a.talk(); // b의 타입이 void가 된다. console.log(b) // 3플레이 그라운드에서 돌려보니 b의 타입만 void 로 추론하고b의 값은 3으로 찍히던데 리턴값을 아예 무시하는건 아닌가요? 타입스크립트 내부에서만 타입추론할때 무시한다는 뜻이겠죠?!