묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
타입스크립트 활용 질문
controllers/auth.ts의 passport.authenticate("local", (authError, user, info) => { ...부분에서 콜백함수의 매개변수들에 "매개 변수에는 암시적으로 'any' 형식이 포함됩니다.ts(7006)" 이런 에러가 발생해서const callback: AuthenticateCallback = (authError, user, info) => { ...이렇게 분리해서 타입을 붙여줬고, 매개변수 에러는 없어졌지만 밑에if (!user) { // 로직 실패 (유저가 없을 때) return res.redirect(`/?loginError=${info.message}`); }여기에서 info에선 "(parameter) info: string | object | (string | undefined)[] | undefined개체가 'undefined'인 것 같습니다.ts(2532)" 에러가 뜨고 message에선 "'string | object | (string | undefined)[]' 형식에 'message' 속성이 없습니다.'string' 형식에 'message' 속성이 없습니다.ts(2339)"에러가 떠서if (!user) { // 로직 실패 (유저가 없을 때) const infoWithMessage = info as { message: string }; return res.redirect(`/?loginError=${infoWithMessage.message}`); }이런식으로 타입에러 처리를 해줬습니다.그런데 테스트 코드 짤 때 100%가 나왔다 하더라도 의미없는 테스트 코드를 짤 수 있다고 경고하신 것처럼 이것도 타입스크립트 에러 처리를 해도 타입스크립트를 제대로 활용해서 타입 명시를 한 것인지, 아니면 그냥 에러 지우기만을 위해서 꼼수를 부린 것인지 어떻게 판단해야 할 지 모르겠습니다. 위 경우에 제대로 사용한 것이 맞는지, 어떤 기준으로 제대로 TS를 사용했다 판단하는 것인지 궁금합니다.
-
미해결처음 만난 리액트(React)
미니 블로그 질문입니다.
미니블로그를 실행시키면 아래와 같은 에러가 브라우저 콘솔에 찍힙니다.소스는 몇 번을 확인해서 잘 못 된 부분이 없다고 생각합니다.MainPage.jsx 부터 불러오질 못하네요.뭐가 잘 못 됐는지 찾아주시면 고맙겠습니다.아래는 App.js 에 PostWritePage, PostViewPage 를 빼고 실행했을 경우 브라우저 페이지 자체에 나오는 에러입니다. function App(props) { return ( <BrowserRouter> <MainTitleText>제플리카의 미니 블로그</MainTitleText> <Routes> <Route index element={<MainPage />} /> </Routes> </BrowserRouter> ); } Uncaught runtime errors:×ERRORElement type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports. Check the render method of MainPage. Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports. Check the render method of MainPage. at createFiberFromTypeAndProps (http://localhost:3000/static/js/bundle.js:36883:21) at createFiberFromElement (http://localhost:3000/static/js/bundle.js:36904:19) at createChild (http://localhost:3000/static/js/bundle.js:25473:32) at reconcileChildrenArray (http://localhost:3000/static/js/bundle.js:25713:29) at reconcileChildFibers (http://localhost:3000/static/js/bundle.js:26055:20) at reconcileChildren (http://localhost:3000/static/js/bundle.js:28987:32) at updateHostComponent (http://localhost:3000/static/js/bundle.js:29631:7) at beginWork (http://localhost:3000/static/js/bundle.js:31076:18) at HTMLUnknownElement.callCallback (http://localhost:3000/static/js/bundle.js:16062:18) at Object.invokeGuardedCallbackDev (http://localhost:3000/static/js/bundle.js:16106:20)ERRORElement type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports. Check the render method of MainPage. Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports. Check the render method of MainPage. at createFiberFromTypeAndProps (http://localhost:3000/static/js/bundle.js:36883:21) at createFiberFromElement (http://localhost:3000/static/js/bundle.js:36904:19) at createChild (http://localhost:3000/static/js/bundle.js:25473:32) at reconcileChildrenArray (http://localhost:3000/static/js/bundle.js:25713:29) at reconcileChildFibers (http://localhost:3000/static/js/bundle.js:26055:20) at reconcileChildren (http://localhost:3000/static/js/bundle.js:28987:32) at updateHostComponent (http://localhost:3000/static/js/bundle.js:29631:7) at beginWork (http://localhost:3000/static/js/bundle.js:31076:18) at HTMLUnknownElement.callCallback (http://localhost:3000/static/js/bundle.js:16062:18) at Object.invokeGuardedCallbackDev (http://localhost:3000/static/js/bundle.js:16106:20)ERRORElement type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports. Check the render method of MainPage. Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports. Check the render method of MainPage. at createFiberFromTypeAndProps (http://localhost:3000/static/js/bundle.js:36883:21) at createFiberFromElement (http://localhost:3000/static/js/bundle.js:36904:19) at createChild (http://localhost:3000/static/js/bundle.js:25473:32) at reconcileChildrenArray (http://localhost:3000/static/js/bundle.js:25713:29) at reconcileChildFibers (http://localhost:3000/static/js/bundle.js:26055:20) at reconcileChildren (http://localhost:3000/static/js/bundle.js:28987:32) at updateHostComponent (http://localhost:3000/static/js/bundle.js:29631:7) at beginWork (http://localhost:3000/static/js/bundle.js:31076:18) at beginWork$1 (http://localhost:3000/static/js/bundle.js:36015:18) at performUnitOfWork (http://localhost:3000/static/js/bundle.js:35284:16)
-
해결됨[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
오늘 시험 9시 시작하고 1시간 20분만에 나왔습니다.
B유형이 나왔구 선생님 강의 듣고 매일 연습한 결과 아주 완벽하게 끝내고 왔습니다!팁을 하나 드리자면 제가 맨처음에 시험을 시작할때 라이브서버나 한글버전의 비주얼 스튜디오가 설치되어 있지 않아서(영문버전) 일단 그냥 했는데 시험 도중에 웹 페이지에서 아무것도 CSS에 적은게 반영이 안되는겁니다... 감독관님을 손들며 부를 때 알게 되었죠 저장 누르면서 해야 적용될 것 같은데? 이생각을요 ㅠㅠ..(+추가드립니다! 시험장에서 영문버전 Auto Save 누르고 하였으나.. 적용이 안되어 비주얼 소프트웨어 문제인지 그거까지 둘다 Ctrl+S / 브라우저 F5를 번갈아가며 눌렀습니다 ;ㅅ;)Html, Css, jQuery를 저장하면서 홈페이지까지 F5로 새로고침을 계속 누르면서 해야되는게 많이 번거로웠습니다!저의 작업순서는 와이어프레임 작성 (8분) --> 포토샵 열고 파일 정리(이미지 등등 크기에 맞게 자르고 텍스트까지 전부다 마침) (20분) --> 헤더로고, 푸터 모든 영역 완성 (5분) --> 바로 슬라이드 완성 (5분) --> news, gallery 완성 (10분) --> Navi 완성 (10분+10분 서브백 어떻게하는지 중간에 까먹음...!!그래도 완성) --> 그리고 나머지는 검토시간(10분정도) 이 순서로 했던 것 같습니다.많은분들이 작업 순서를 고민하신다면 이렇게 해보시는걸 추천드립니다!(참고로....저는...시험 다 끝나고 제출할때까지도...용량 초과했는지 확인을 못했지만... 연습을 엄청나게 많이 해봤을때 아무리커봐야 2MB~3MB정도 일거라고 판단하여.. 95점정도의 고득점 예상합니다!) 다들 화이팅입니다!ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ아차! 추가로 영문버전은 단축키(줄 삭제 / 줄 복제 / 줄 이동) 이런거는 단축키에 들어가셔서 "line" 이것만 쳐도 바로 상단에 전부다 몰려있으니 꼭 시험 시작하기전에 단축키부터 설정하고 하시면됩니다. 한글버전도 마찬가지구 이게 시험 시간 단축의 큰 도움이 될겁니다.
-
미해결그림으로 쉽게 배우는 네트워크
애니캐스트 유니캐스트
안녕하세요.'유니캐스트, 브로드캐스트, 멀티캐스트, 애니캐스트' 강의 2:40에서 "만약 애니캐스트를 이용한다면 먼저 목적지 주소를 주소 2로 설정해 모든 노드로 데이터를 전송합니다." 문장이 이해가 잘 안 됩니다.제 생각에는 애니캐스트 대신 유니캐스트를 이용하는게 문장이 성립해보입니다. 혹시 오타가 나신걸까요?짧은 식견으로 질문을 드려 죄송합니다.
-
미해결[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z
질문 드립니다
안녕하세요 선생님 강의를 듣다 의문이 생겼습니다.1. setOnLongClickListener를 MainActivity에서 사용하거나 OnItemLongClickListener 구현을 ToDoRecyclerViewAdapter에서 하면 안 되나요? 굳이 분리해야 하는 이유가 무엇인가요?MainActivity와 ToDoRecyclerViewAdapter 둘 중에서 어디에 기능을 구현할지 정하는 기준이 무엇인가요?감사합니다.
-
미해결[중급편] 친절한 JETPACK 개론 <하> (Android Kotlin)
paging lv3 에서 json 받아오는 도메인이 만료됬다고 떠요
paging lv3 에서 json 받아오는 도메인이 만료됬다고 떠요 어떻게 하면 될까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
만약 WAS가 죽는 경우 Exception Handling?
안녕하세요!이번에도 강의를 듣던 도중 궁금한 점이 생겨 질문드립니다. 이전에 스프링 MVC 1편 초반부에서 웹 시스템을 구성함에 있어, 정적 리소스는 웹서버에 동적 렌더링이 필요한 데이터 트랜잭션 부분들은 WAS에 역할을 나누어 구성한다고 알려주셨던 것으로 기억하는데요!지금 배우는 부분은 WAS 내에서 서블릿과 스프링 MVC가 어떻게 동작하는지 배우는 것으로 이해했습니다.그렇다면 지금 공부하는 시점에서는 WAS가 죽어버리면 아예 접속이 안되는 (흔히 서버가 다운되어서 Request Timeout이 뜨는 것과 동일함) 것으로 이해하면 될까요? 그리고 콘서트 티켓팅 사이트들에서 예매를 진행하게 될때 모 사이트에서는 아예 Timeout이 됐는지 안됐는지도 개발자 도구에서 확인해야하고 페이지는 하얀 화면만 띄우고 있던데이런 Timeout 관련해서는 Exception을 띄우는게 불가능한건지도 여쭤보고 싶습니다 감사합니다!
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
CreateListView.js 파일에서 $store 가 불러와지나요???
main.js에도 잘 연결되어있는데해당 에러가 납니다이유가 무엇인지 잘 모르겠네요
-
미해결[중급편] 코인 가격 모니터링 앱 제작 (Android Kotlin)
15, 30, 45 분 데이터가 쌓이지 않습니다.
이런 에러가 뜨면서 adapter가 작동하지 않고있는것 같은데. 인터넷에서 이유를 찾아 해결도 해보았지만 실행이 되지 않습니다.https://github.com/JASON-DJ-CHA/coco깃허브 코드입니다. 그리고 포그라운드 서비스를 사용할려고하는데 에뮬레이터마다 작동이 안되는게 있나요?
-
미해결스프링 핵심 원리 - 기본편
Test를 돌렸을 때 자바 결과 + 스프링 로그(?)도 출력하고 싶습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요, 좋은 강의 잘 듣고 있는 전진호 학생입니다.아래 사진은 싱글톤 컨테이너 강의 3분 26초에 나오는 SingletonTest의 springContainer를 돌렸을 때 제 결과입니다. 강사님의 결과는 아래처럼 나오고 그 이후에 결과가 나옵니다.강사님의 터미널 결과처럼 나오게 하려면 어떻게 해야 할까요.그리고 강사님의 결과처럼 저는 왜 "Test Results"가 안 보이는지 모르겠습니다. (아래 사진에 보면 Test Result가 안 보입니다.) 구글링을 해보니 log4j라고 하는데 application.xml을 만들어서 넣어보기도 하고, application.properties에 넣어보기도 하고, implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.20.0'를 빌드 해보기도 했는데 잘 안되어서 질문 드립니다. 관련 링크라도 주시면 감사하겠습니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
AutoML EfficientDet Inference 수행 결과 분석 및 시각화 질문
config.nms_configs.score_thresh = 0.4 이렇게 설정했기 때문에 confidence score가 0.4 밑인 것을 걸러낸다고 하셨습니다. 제가 알고 있기로는 nms에서 threshold값을 0.4로 준다는 것은 confidence score을 내림차순으로 정렬하고 iou가 threshold 이상인 값을 삭제한다고 알고 있었습니다만 AutoML에서 말하는 confidence score는 다른 의미인가요?
-
미해결윤재성의 자바 기반 안드로이드 앱개발 Part 3 - 데이터관리와 네트워크
35강이 없습니다
강의 자료를 보다 보니 35강이 있는데 동영상 강의는 35강이 없습니다
-
미해결Vue-Django-Bootstrap 뚝딱 블로그
post detail 임시화면 수업에서
from django.conf import settingsfrom django.conf.urls import staticfrom django.contrib import adminfrom django.urls import path, includefrom mysite.views import HomeViewurlpatterns = [path('admin/', admin.site.urls),path('',HomeView.as_view(),name='home'),path('blog/', include('blog.urls')),]urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)에서 urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)TypeError: 'module' object is not callable 에러가 나오는데settings을 못 찾는 것 같습니다.
-
미해결[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
오늘이 시험인데 C타입 와이어프레임이 갑자기 이상합니다!....
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>남도맛기행 축제</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="container"> <div class="left"> <header> <div class="header-logo"></div> <div class="navi"></div> </header> </div> <div class="right"> <div class="slide"> <div></div> </div> <div class="items"> <div class="news"></div> <div class="gallery"></div> <div class="banner"></div> </div> </div> <footer> <div class="footer-logo"></div> <div class="copyright"> <div></div> <div></div> </div> </footer> </div> <script src="script/jquery-1.12.4.js"></script> <script src="script/custom.js"></script> </body> </html> @charset "utf-8"; body { background-color: #fff; color: #222328; font-size: 15px; margin: 0; } a { color: inherit; text-decoration: none; } .container { border: 1px solid red; width: 1000px; overflow: hidden; } .container > div { /* border: 1px solid black; */ /* height: 1000px; */ float: left; box-sizing: border-box; } .left { width: 200px; } header {} header > div { border: 1px solid green; } .header-logo { height: 100px; } .navi { height: 400px; } .right { width: 800px; } .slide {} .slide > div { border: 1px solid pink; height: 350px; } .items { overflow: hidden; } .items > div { border: 1px solid blue; height: 200px; float: left; box-sizing: border-box; } .news { width: 300px; } .gallery { width: 300px; } .banner { width: 200px; } footer {} footer > div { border: 1px solid green; height: 100px; float: left; box-sizing: border-box; } .footer-logo { width: 200px; } .copyright { width: 600px; } .copyright > div {}이게 갑자기이런식으로 밑에가 안밀리고 왼쪽으로 딱 붙어있는데 저도 실기 연습중에 처음으로 일어난 일이라 방법을 못찾고있습니다....도움이 필요합니다
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
코드 오류
from random import * # 일반 유닛 class Unit: def __init__(self, name, hp, speed): self.name = name self.hp = hp self.speed = speed print("{0} 유닛이 생성되었습니다.".format(name)) def move(self, location): print("{0} : {1} 방향으로 이동합니다. [속도 {2}]"\ .format(self.name, location, self.speed)) def damaged(self, damage): print("{0} : {1} 데미지를 입었습니다.".format(self.name, damage)) self.hp -= damage print("{0} : 현재 체력은 {1}입니다.".format(self.name, self.hp)) if self.hp <= 0: print("{0} : 파괴되었습니다.".format(self.name)) # 공격 유닛 class AttackUnit(Unit): def __init__(self, name, hp, speed, damage): Unit.__init__(self, name, hp, speed) self.damage = damage def attack(self, location): print("{0} : {1} 방향으로 적군을 공격합니다. [공격력 {2}]"\ .format(self.name, location, self.damage)) # 마린 class Marine(AttackUnit): def __init__(self): AttackUnit.__init__(self, "마린", 40, 1, 5) # 스팀팩 : 일정 시간 동안 이동 및 공격 속도를 증가, 체력 10 감소 def stimpack(self): if self.hp > 10: self.hp -= 10 print("{0} : 스팀팩을 사용합니다. (HP 10 감소)".format(self.name)) else: print("{0} : 체력이 부족하여 스팀팩을 사용하지 않습니다.".format(self.name)) # 탱크 class Tank(AttackUnit): # 시즈모드 : 탱크를 지상에 고정시켜, 더 높은 파워로 공격 가능. 이동 불가. seize_developed = False # 시즈모드 개발여부 def __init__(self): AttackUnit.__init__(self, "탱크", 150, 1, 35) self.seize_mode = False def set_seize_mode(self): if Tank.seize_developed == False: return # 현재 시즈모드가 아닐 때 -> 시즈모드 if self.seize_mode == False: print("{0} : 시즈모드로 전환합니다.".format(self.name)) self.damage *= 2 self.seize_mode = True # 현재 시즈모드일 때 -> 시즈모드 해제 else: print("{0} : 시즈모드로 해제합니다.".format(self.name)) self.damage /= 2 self.seize_mode = False # 날 수 있는 기능을 가진 클래스 class Flyable: def __init__(self, flying_speed): self.flying_speed = flying_speed def fly(self, name, location): print("{0} : {1} 방향으로 날아갑니다. [속도 {2}]"\ .format(name, location, self.flying_speed)) # 공중 공격 유닛 클래스 class FlyableAttackUnit(AttackUnit, Flyable): def __init__(self, name, hp, damage, flying_speed): AttackUnit.__init__(self, name, hp, 0, damage) # 지상 speed 0 Flyable.__init__(self, flying_speed) def move(self, location): self.fly(self.name, location) # 레이스 class Wraith(FlyableAttackUnit): def __init__(self): FlyableAttackUnit.__init__("레이스", 80, 20, 5) self.clocked = False # 클로킹 모드 (해제 상태) def clocking(self): if self.clocked == True: print("{0} : 클로킹 모드 해제합니다.".format(self.name)) self.clocked = False else: print("{0} : 클로킹 모드 설정합니다.".format(self.name)) self.clocked = True def game_start(): print("[알림] 새로운 게임을 시작합니다.") def game_over(): print("Player : gg") print("[Player] 님이 게임에서 퇴장하셨습니다.") # 게임 시작 game_start() # 마린 3기 생성 m1 = Marine() m2 = Marine() m3 = Marine() # 탱크 2기 생성 t1 = Tank() t2 = Tank() # 레이스 1기 생성 w1 = Wraith() # 유닛 일괄 관리 attack_units = [] attack_units.append(m1) attack_units.append(m2) attack_units.append(m3) attack_units.append(t1) attack_units.append(t2) attack_units.append(w1) # 전군 이동 for unit in attack_units: unit.move("1시") # 탱크 시즈모드 개발 Tank.seize_developed = True print("[알림] 탱크 시즈 모드 개발이 완료되었습니다.") # 공격 모드 준비 (마린 : 스팀팩, 탱크 : 시즈모드, 레이스 : 클로킹) for unit in attack_units: if isinstance(unit, Marine): # isinstance() -> 만들어진 객체가 어떤 클래스의 instance인지 확인하는 것 unit.stimpack() elif isinstance(unit, Tank): unit.set_seize_mode() elif isinstance(unit, Wraith): unit.clocking() # 전군 공격 for unit in attack_units: unit.attack("1시") # 전군 피해 for unit in attack_units: unit.damaged(randint(5, 21)) # 게임 종료 game_over()이런식으로 오류가 뜨는데 뭐가 잘못된 것인지 모르겠습니다. 1개의 요소가 부족하다고 나오는데 저는 4가지 다 작성했습니다...
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
정적 웹 사이트 호스팅 실습
강사님, 안녕하세요정적 웹사이트 도메인에 접속했을 때에 아래와 같이 뉴욕과 서울의 이미지 파일이 나타나지 않았습니다.어떤 문제 때문에 이렇게 나타나는지 그리고 어떻게 해결하면 되는지 궁금합니다. 감사합니다.
-
해결됨IT 기업 취업을 위한: 코딩테스트 혼자서 정복하기 (C/C++)
f20 에서 f15 + 1은 이해가 됩니다...
다만, f15 에서 f10 +1 +1 / f12 +1 +1 은 이해가 되지 않습니다. 15원을 만들기 위해서는 10원을 만든 동전 개수에서 5원짜리 동전+1 만 하는게 맞지 않나요? 마찬가지로 f12도 12원을 만들기 위해서는 12원을 만든 동전개수에 3원짜리 +1만 하면 되는줄 알았지만 왜 f10 +1+1 / f12+1+1 인지 이해가 되지않습니다...
-
미해결파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
동시성 프로그래밍으로 이미지 다운로더 개발
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 해당 강의에서 img_downloader 함수를 정의할 때 aiofiles의 용도가 무엇인가요?file.write을 할때 로컬에 저장하는것 같은데, 이때도 await을 사용하는 이유가 무엇인가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
ServletComponentScan 어노테이션 추가 후 오류가 발생합니다
프로젝트 빌드 직후에는 서버 로드가 잘 되는데 lombok 설정을 하고 ServletComponentScan을 아래와 같이 추가한 다음에 실행하면 오류가 발생합니다. 혹시 몰라서 프로젝트 삭제하고 다시 해봤는데 같은 현상이 발생하네요. 오류 코드는 아래 두 번째 사진입니다. 어떻게 해결해야 하나요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
스크립트 변수명, 함수명 등 바꿀 때 팁이라고 해야할까요?
중복이면 죄송합니다.바꾸실 이름에 커서를 두고 Ctrl + R(두번)을 누르시면 이름 바꾸기가 나오는데 바꾸실 이름을 입력하고 엔터를 누르시면 참조되어 있는 것들 싹다 변경됩니다.