묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결함수형 프로그래밍과 JavaScript ES6+ 응용편
pick 이렇게 만드는건 어떤가요?
const obj2 = { a: 1, b: 2, c: 3, d: 4, e: 5 }; const pick = (arr, obj) => _.go( obj2, L.entries, L.filter(([k, v]) => arr.includes(k)), L.map(([k, v]) => [k, v]), object ) console.log(pick(['b', 'c', 'z'], obj2));.
-
미해결남박사의 파이썬으로 실전 웹사이트 만들기
게시판 작성 후 상세보기로 redirect시 오류
훌륭하신 강의 덕분에 잘 따라가고 있는데... 여기서 에러가 나서 도저히 진도가 안나가네요.. 게시판 작성 후 --> 게시판상세보기에서 (DB은 입력되지만, redirect(url_for ~~)에서 에러가 발생해서 진도가 못나가고 있어요구글링을 해 봤는데 도저히 해결책이 없습니다. -------------------------------------------------------------------- from flask import Flask from flask import request from flask import render_template from flask_pymongo import PyMongo from datetime import datetime from bson.objectid import ObjectId from flask import abort from flask import redirect from flask import url_for app = Flask(__name__) app.config["MONGO_URI"] = "mongodb://localhost:27017/myweb" mongo = PyMongo(app) @app.route('/view') def board_view(): idx = request.args.get("idx") if idx is not None: board = mongo.db.board data = board.find_one({"_id":ObjectId(idx)}) if data is not None: result = { "id" : data.get("id"), "name" : data.get("name"), "title" : data.get("title"), "contents" : data.get("contents"), "isdate" : data.get("isdate"), "view" : data.get("view") } return render_template("view.html", result=result) return "" @app.route('/write', methods=["GET","POST"]) def board_write(): if request.method == "POST": name = request.form.get("name") title = request.form.get("title") contents = request.form.get("contents") isdate = round(datetime.utcnow().timestamp() * 1000) view=0 print(name,title,contents,isdate,view) board = mongo.db.board post = { "name" : name, "title" : title, "contents" : contents, "isdate" : isdate, "view" : view } x = board.insert_one(post) print(x.inserted_id) return redirect(url_for("board_view"),idx=x.inserted_id) else: return render_template("write.html") if __name__ == "__main__": app.run(host="127.0.0.1", debug=True, port=5000) -------------------------------------------------------------------- x = board.insert_one(post) print(x.inserted_id) return redirect(url_for("board_view"),idx=x.inserted_id) 도 안되고 return redirect(url_for("board_view"),idx=str(x.inserted_id)) 이것도 안됩네요
-
미해결[발표스피치] 대기업 임직원, 스타트업 대표들이 배우는 청중을 사로잡는 발표 방법!
발표스피치 오늘부터 시작
오늘부터 발표스피치 강의를 개시하였습니다. 다른 클래스 프로그램에서는 커뮤니티를 통해 피드백도 주시고 하는 것으로 알고 있는데 인프런에서는 어떻게 진행하게 되는지 궁금합니다.
-
미해결스프링 핵심 원리 - 기본편
Annotations are not allowed here 에러
1. 강의 내용과 관련된 질문인가요? 네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 네3. 질문 잘하기 메뉴얼을 읽어보셨나요? 네[질문 내용] 안녕하세요, Java도 스프링도 intelliJ도 처음이라 강의 하나하나 따라가고 있습니다: 컴포넌트 스캔 - 필터 강의에서 다음과 같은 에러를 만났습니다. annotation import를 했는데 여기서 사용할 수 없다는 에러였는데요, 다른분들은 문제가 없으신지 검색이 되지 않고구글링에서 나오는 경우들은 class에 붙여야 할 어노테이션을 메소드에 붙이고 있는 식으로 위치가 잘못되어있는 것 같은데 이건 그런 경우도 아니라서 오리무중인 상태입니다... IDE가 제공하는 Fix도 해당 라인 remove밖에 없구요. 뭐가 문제인 걸까요?
-
해결됨스프링 핵심 원리 - 고급편
애노테이션 @Transactional의 위치 질문입니다.(AOP 관련)
안녕하세요 김영한님! 강의를 다 듣고나서 트랜잭션 AOP의 동작원리를 알 수있게 되어 정말 감사합니다. 다만 제가 궁금한건 애노테이션 @Transactional입니다. 주로 서비스의 메소드에 적용하는데 클래스에도 붙일 수 있더군요. @Service@Transactional(readOnly = true)public class ProductService { 강의에서는 AOP 적용위치는 생성자, 필드 값 접근, static 메서드 접근, 메서드 실행 이라고 말씀하셨는데 저 애노테이션은 AOP와 관련이 없는건가요? 아님 내부적으로 클래스 단위에 붙일 때는 클래스 하위 메소드에도 전부 적용하도록 내부 코드에 설정이 되어있는건가요? (흑흑 강의를 다시 들어야하는 걸까요?) 질문 읽어주셔서 감사합니다!
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
새로 올리신 리액트쿼리 버전에서 getServerSideProps대신 getStaticProps 쓰는 이유가 궁금합니다.
안녕하세요. 자꾸 귀찮게 해드려서 죄송합니다. 리액트쿼리로 바꾸신거 조금씩 따라하면서 변형하고 있는데 /user/[id] /post/[id] 에서 getServerSideProps대신 getStaticProps 로 바뀐걸 봤습니다. 정적은 빌드시에 데이터 불러오는거라서 데이터 변경가능성이 있는 post/[id]같은 경우는 정적을 쓰면 안될것같은 느낌인데 무슨 장점이나 혹시 바꾸신 이유가 있을까요? 그리고 queryClient.prefetchQuery에 대해서도 궁금한점이 있습니다. 현재 상품을 등록하는 /item/register.tsx를 작성중이고 로그인된 유저에서 정보를 가져와야 해서 서버사이드 랜더링을 적용중에 있습니다. 유저정보를 가져오는 api export function loadMyInfoAPI() { return axios.get('/user').then((response) => response.data); } back에서 라우터 부분 // 로그인 유저 정보 얻기 router.get('/', async (req, res, next) => { // GET /user 로그인 유지 위해 로그인한 유저의 정보 전송 console.log('req.user?', req.user); try { if (req.user) { // 로그인 됐을경우 const userDataWithoutPassword = await User.findOne({ // 프론트로 보낼 유저 정보를 재가공 where: { id: req.user.id }, attributes: { exclude: ['password'], // 비밀번호 제외 }, include: [ { model: User, as: "Customers", attributes: ["id", "company"], exclude: ['UsersRelation'], } ] }) res.status(200).json(userDataWithoutPassword); console.log(JSON.stringify(userDataWithoutPassword)); } else { res.status(200).json(null); } } catch (error) { console.error(error); next(error); } }); 프론트 /item/register.tsx에서 기본 골자는 const Register = () => { ... const { data: myUserInfo } = useQuery<User>('user', loadMyInfoAPI); ... 중략 return ( <AppLayout> <div>{JSON.stringify(myUserInfo)}</div><br /> ... 중략 <div> <List className="demo-loadmore-list" itemLayout="horizontal" dataSource={myUserInfo.Customers} renderItem={(item) => ( <List.Item key={item.id} actions={[ <> <Button type="primary" shape="circle">등록</Button> </> ]} > <List.Item.Meta title={ <> {item.company}<span> | </span><span>담당자: {item.id}</span> </>} /> </List.Item> )} /> </div> 이렇게 로그인된 유저 정보를 출력해주는 부분이 있습니다. myUserInfo.Customers는 me.followers와 흡사한 개념으로 맍들었고요. 서버사이드 랜더링은 export const getServerSideProps = async (context: GetServerSidePropsContext) => { const cookie = context.req ? context.req.headers.cookie : ''; axios.defaults.headers.Cookie = ''; if (context.req && cookie) { axios.defaults.headers.Cookie = cookie; } const response = await loadMyInfoAPI(); if (!response) { return { redirect: { destination: '/', permanent: false, }, }; } return { props: {}, }; }; 단순히 로그인체크만 해서 로그인이 안됐을경우 리다이랙트만 해주는 서버사이드랜더링을 하면 back에서 console.log('req.user?', req.user); 값은 정상적으로 user객체를 출력합니다. 프론트 페이지도 정상적으로 데이터가 나오고요. JSON.stringify(myUserInfo)로 출력한 데이터는 object {9} id : tester1 company : testers name : test phone : 101010 email : 2 role : NOVICE createdAt : 2021-12-17T04:43:25.000Z updatedAt : 2021-12-17T04:43:25.000Z Customers [2] 0 {2} id : ttt3 UsersRelation {4} 1 {2} id : tttt UsersRelation {4} createdAt : 2021-12-17T08:05:07.000Z updatedAt : 2021-12-17T08:05:07.000Z customerId : tttt providerId : tester1 이렇게 나옵니다. 물론 데이터를 받아와서 주입해주는 부분이 없기때문에 /item/register로 주소를 쳐서 들어가면 오류가 납니다. 데이터를 주입시켜주기 위해 쿼리클라이언트를 사용할 경우 export const getStaticProps = async () => { const queryClient = new QueryClient(); await queryClient.prefetchQuery(['user'], () => loadMyInfoAPI()); return { props: { dehydratedState: JSON.parse(JSON.stringify(dehydrate(queryClient))), }, }; }; back에서 user는 undefined로 나오게 되고 오류가 발생합니다.. 어떠한 부분때문에 같은loadMyInfoAPI 를 쓰는데도 불구하고 다른 결과가 나오는지 궁금함니다. 프론트 터미널의 오류메시지 TypeError: Cannot read property 'Customers' of undefined at Register (D:\3programming\excuse_moa\front_rq\.next\server\pages\item\register.js:2657:36) at processChild (D:\3programming\excuse_moa\front_rq\node_modules\react-dom\cjs\react-dom-server.node.development.js:3353:14) at resolve (D:\3programming\excuse_moa\front_rq\node_modules\react-dom\cjs\react-dom-server.node.development.js:3270:5) at ReactDOMServerRenderer.render (D:\3programming\excuse_moa\front_rq\node_modules\react-dom\cjs\react-dom-server.node.development.js:3753:22) at ReactDOMServerRenderer.read (D:\3programming\excuse_moa\front_rq\node_modules\react-dom\cjs\react-dom-server.node.development.js:3690:29) at Object.renderToString (D:\3programming\excuse_moa\front_rq\node_modules\react-dom\cjs\react-dom-server.node.development.js:4298:27) at renderPage (D:\3programming\excuse_moa\front_rq\node_modules\next\dist\server\render.js:596:45) at Object.ctx.renderPage (D:\3programming\excuse_moa\front_rq\.next\server\pages\_document.js:1161:30) at Function.getInitialProps (D:\3programming\excuse_moa\front_rq\.next\server\pages\_document.js:621:19) at Function.getInitialProps (D:\3programming\excuse_moa\front_rq\.next\server\pages\_document.js:1169:87) error - Error: "MyDocument.getInitialProps()" should resolve to an object. But found "undefined" instead. at Object.loadGetInitialProps (D:\3programming\excuse_moa\front_rq\node_modules\next\dist\shared\lib\utils.js:75:15) at runMicrotasks (<anonymous>) at processTicksAndRejections (internal/process/task_queues.js:93:5) at async renderDocument (D:\3programming\excuse_moa\front_rq\node_modules\next\dist\server\render.js:609:30) at async Object.renderToHTML (D:\3programming\excuse_moa\front_rq\node_modules\next\dist\server\render.js:647:28) at async doRender (D:\3programming\excuse_moa\front_rq\node_modules\next\dist\server\next-server.js:1149:38) at async D:\3programming\excuse_moa\front_rq\node_modules\next\dist\server\next-server.js:1241:28 at async D:\3programming\excuse_moa\front_rq\node_modules\next\dist\server\response-cache.js:64:36 { page: '/item/register' } back의 터미널 로그 req.user? undefined GET /user 200 1.716 ms - 4
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
.dockerIgnore
.dockerignore 파일에 node_modules를 적어줘도 따로 카피되지않아 삭제한것같은 효과를 줄수있죠? 정확히 몰라서 질문드립니다!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
요즘 인터넷상에 핫해서 당연히 아시겠지만 log4해킹관련해서 질문있습니다!
Log4J 또는 Log4Shell이 취약점으로 되어 전세계 제일 유명한 사이틀 마저도 이로 이루어진 사이트들이 전부 해킹 당하고있고 심지어 누가 했는지도 알수없다고 하는데요, 강의 내용상, Log4J를 포함하는 게 SLF4J이고 이걸 구현한것이 Logback이며 이걸 실무에서 가장 많이 쓴다고 배웠습니다. 현재 이렇게 보안이 뚫린 상태에서 Logback또한 취약점이 될까요?
-
미해결Klaytn 클레이튼 블록체인 어플리케이션 만들기 - NFT
kaikas 와 연동하여 로그인하려면 어떤걸 공부해야 할까요?
강좌 두번보고 나니 이제 어느정도 개념은 잡히네요. 감사합니다. 크래프터스페이스와 같은 nft 거래소를 만들어보고 싶은데요 궁금한게 여기 들어가면 kaikas 지갑이랑 연동해서 로그인이 되던데 이렇게 하려면 어떤걸 봐야 하나요? caver-js 에 이런 내용이 있을까요? 검색하기가 좀 힘드네요.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
질문 있습니다
Jdbc~~가 Memory~~를 상속하지 않았는데도 불구하고 어떻게 Memory~~의 메소드를 사용할 수 있는지 이해가 가질 않습니다. 공통점이라고 한다면 둘 다 MembeRepository 인터페이스를 상속하고 있다는것 뿐이지 않나요? Jdbc~~ -> memberRepository <- Memory~~ (화살표는 인터페이스 상속중이라는 표시입니다) 이렇게 상속을 하고 있는거 같은데 Jdbc~~는 Memory~~와 직접적인 연관이 없지 않나요? SpringConfig.class에서 memberRepository()를 호출하고 memberRepository를 상속한 Jdbc~~가 반환되는데 어떻게 Memory~~의 메소드를 사용할 수 있는지 궁금합니다
-
해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
안녕하세요. 비주얼스튜디오코드 설치하는 이유가 뭔가요?
안녕하세요. 수강생입니다. 이거 굳이 비주얼스튜디오코드 설치하는 이유가 뭔가요? 이거 안쓰시고 이후 파이참만 쓰는거 같아서 질문을 올려요. 파이참 설치하라는게 없고 뭔가요? 그리고 중요한 게 있는데요. 파이참에서 콘솔창에서 명령어 해야되는게 이게 없어가지고 고생합니만
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
스프링 mvc 전체 구조 그림에 html 응답이 dispatcher servlet(front controller)에서 나가야 하지 않나요?
안녕하세요 지금까지(앞에 강의를 들으면서) servlet에서 응답을 처리해 주는 걸로 알고 있었는데요 view 에서 render 메소드를 통해 응답에 html을 실어주는 것은 이해를 했는데 응답(reference)이 들어옴 -> 서블릿 -> view -> 서블릿 -> 나감 순서대로 가는 것인지 서블릿 -> view -> 나감 순서대로 가는 것인지 혼동이 와서 질문드립니다 감사합니다!
-
미해결고수가 되는 파이썬 : 동시성과 병렬성 문법 배우기 Feat. 멀티스레딩 vs 멀티프로세싱 (Inflearn Original)
맥 가상환경 실행시에
안녕하세요.... 강의를 맥에서 따라 하면서 듣고 있는데 강의에서처럼 python_ex라는 가상환경 폴더를 생성하고 지금까지는 잘 진행중인데, import requests 부분 부터는 오류가 납니다. 가상환경에서 pip로 설치하여 커맨드 창에서는 에러가 안나는데 Vscode 상에서는 오류가 납니다. 오류는 ModuleNotFoundError 입니다. Python 인터프리터 선택하여 가상환경의 bin폴더에 있는 python3를 선택하면 왼쪽 맨 아래에 python 3.10.0 64-bit 라고 제대로 뜨는데 여기를 클릭하면 경로가 가상환경의 bin이 아닌 /Library/Framework/Python.framework/Versions/3.10/bin/python3.10 으로 바뀌어 있네요... 가상환경 bin폴더의 python3를 보니 위 경로로 링크가 되어 있어서 그러는 듯 합니다. 윈도우에서는 실행파일이 그대로 복사되어 있는데 맥은 링크만 하는 것 같아요. 이럴 때 어떻게 해야 vscode에서 제대로 실행을 할 수 있을까요??
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
이 시점에서 궁금한 http와https
http를 공부하다보니까 https에 대해서 찾아보게되었는데요.저희가 지금 사용하는것은 https인데, 제가 찾아본 결과 보안장치가 더 추가됐다고 하더라구요.그러면 https도 지금 이제까지 말씀해주신 http의 특징들을 다 가지고있는거 포함 이면서,TCP/IP프로토콜에서 Application 에서 아래층 Transport로 내려가면서 HTTP 에다가 +SSL이라는 보안장치를 가진 정보를 주고 HTTPS가 돼서 전송되는 거라고 생각합니다.즉, HTTP의 기본 프로토콜에다가+ SSL이 추가돼서 HTTPs가 되는거라고 생각하는데 , 그럼 이와 같은 원리로 원래 HTTP/1.1라는 대부분에 들어있는 스펙이 있는데 이후 업그레이드된 HTTP/2, HTTP/3 버전의 경우 또한 기존HTTP를 바탕으로 전송되면서 2 혹은 3로 변경이 되는건가요? 아니면 기존의 HTTP/1.1프로토콜이 아닌 HTTP/3의 경우는 UDP이므로 커스터마이징해서 보내지는건가요? 왜냐하면 이전 영상에서는 개발자도구 열어서 프로토콜을 보게되면 HTTP/1.1이 보였는데, 현재는 구글도그렇고 네이버도 그렇고 HTTP/1.1은없고, HTTP/2와 HTTP/3밖에 안보입니다.
-
미해결Vue.js 시작하기 - Age of Vue.js
props 내 카멜 케이스
안녕하세요. Vue를 처음 다루는데 캡틴판교님의 강의 덕분에 쉽게 접근할 수 있습니다. 감사합니다 ㅎㅎ 이전에 같은 질문은 있지만 이해를 하지 못해 다시 질문드립니다. props내에서는 카멜 케이스로 동작하지 않고 있습니다. propsdata 는 되지만 propsData로 하게 되면 vue 개발자 도구에서 $attrs로 소문자로만 구성되어 있는 propsdata가 뜨게 되고, data에는 propsData: undefined라고 뜨게 되어 데이터가 넘어가지 않습니다. props 내에서는 소문자만 써야하나요?
-
미해결(신규 강의로 재오픈 예정) 스스로 구축하는 AWS 클라우드 네트워크 - 기본편
ping 관련해서 질문드립니다.
안녕하세요. 우선 좋은 강의 감사합니다. public-ec2-d가 도쿄가 아닌 버지니아 북부로 했다는 점을 제외한 모든 설정을 강의와 동일하게 구성했다고 생각하는데, ping이 안되어 혹시 시도해볼만한 방법이 있을지 문의남깁니다. 현재 서울의 public-ec2-a에서 igw 통해 public-ec2-d의 외부아이피에 ping은 성공한것으로 보아 보안그룹이나 ACL의 문제는 아닌 것으로 자체판단하고 있습니다. (private-ec2-a도 public과 라우팅테이블 제외한 구성이 동일합니다.) 추가로, s2s VPN 구축을 목적으로 하고있어서 private ec2 구성 이후 섹션 (vpc endpoint, ELB, VPC peering, Transit gateway) 은 아직 수강하지 않았는데, 해당 섹션들에서 s2s VPN 구축에 필요한 구성이 있었을 가능성이 있을까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
pathVariable 질의
안녕하세요! 강의 잘 듣고 있는 학생입니다! 교재 4페이지 /users/{userId} @PathVariable("data") Integer data 라는 부분에서 pathVariable이 userId 니까 @PathVariable("userId")를 해야 하지 않나요?
-
미해결<M.B.I.T> 테스트 페이지 만들기! with Django
안넘어가요.
1/3에서는 잘 넘어가는데 2/3에서는 안넘어 갑니다. html코드는 이거입니다. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>나의 개발 유형찾기</title> <link rel="stylesheet" type="text/css" href="css/reset.css"> <link rel="stylesheet" type="text/css" href="css/form.css"> </head> <body> <section id="survey"> <div class="wrapper"> <form id="form"> <div class="test"> <div class="question_container"> <h3 class="number">1/3</h3> <h3 class="question">당신이 가장 재밌었던 수업은?</h3> </div> <div class="answer"> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> </div> <div class="btn_wrap"> <button class="next_btn">다 음</button> </div> </div> <div class="test"> <div class="question_container"> <h3 class="number">2/3</h3> <h3 class="question">당신이 가장 재밌었던 수업은?</h3> </div> <div class="answer"> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> </div> <div class="btn_wrap btn_sort"> <button class="prev_btn">이 전</button> <button class="next_btn">다 음</button> </div> </div> <div class="test"> <div class="question_container"> <h3 class="number">3/3</h3> <h3 class="question">당신이 가장 재밌었던 수업은?</h3> </div> <div class="answer"> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> <div> <input id="one" type="radio" name="answer_1"> <label for="one">게임 개발(유니티, 언리얼, Pygame)</label> </div> </div> <div class="btn_wrap btn_sort"> <button class="prev_btn">이 전</button> <input type="submit" value="제 출" class="submit_btn"/> </div> </div> </form> </div> </section> <script src="https://code.jquery.com/jquery-3.6.0.js"></script> <script type="text/javascript" src="js/form.js"></script> </body> </html> 자바스크립트 코드는 이거입니다. function scrollUp() { const vheight = $('.test').height(); $('html, body').animate({ scrollTop: ((Math.ceil($(window).scrollTop() / vheight)-1) * vheight) }, 500); }; function scrollDown() { const vheight = $('.test').height(); $('html, body').animate({ scrollTop: ((Math.floor($(window).scrollTop() / vheight)+1) * vheight) }, 500); } $(function(){ $('.next_btn').click(function(e){ let divs = $(this).parent().prev().children(); let inputs = divs.find('input:checked'); if(inputs.length < 1) { alert('문항이 선택되지 않았습니다.'); return false; } e.preventDefault(); scrollDown(); }); $('.prev_btn').click(function(e){ e.preventDefault(); scrollUp(); }); $("#form").submit(function() { let radios = $('input[type=radio]:checked'); if(radios.length < 10) { alert("문항이 선택되지 않았습니다."); return false; } return true; }); $("html, body").animate({ scrollTop: 0 }, 500); });
-
미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
이 부분만 이해 가지 않습니다.
let i = 0; while(i < 10){ i++; if(i % 2 ===0 ){ continue; } console.log(i); } 1 3 5 7 9 //결과값이 왜이렇게 나온지 잘되지 않습니다. 다시 한번더 설명부탁드립니다.
-
미해결악성코드 분석을 위한 메모리 포렌식 (memory forensic)
installdriver cannot start service 라는 메시지가 뜹니다
win32dd.exe를 윈도우10 64bit환경에서 사용했는데 installdriver cannot start service라는 오류메시지가 뜨면서 에러가 났습니다.. 왜 이런 에러가 나는 건가요? 혹시 32bit 환경이 아니어서 이런 에러가 뜨는 건가요? 처음이라 어렵네요