• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Vue 게시판 바로 밑에 글 추가질문입니다.

바로 밑에 글 추가질문입니다.

  • 이 주제에는 5개 답변, 2명 참여가 있으며 김진우2 년 전에 전에 마지막으로 업데이트했습니다.
6 글 보임 - 1 에서 6 까지 (총 6 중에서)
  • 글쓴이
  • #87541

    김진우
    참가자
    모달창이 뜨지않는 이슈때문에 강의 진행을 못하고있어요..ㅠㅠ
    
    @openModal 말고 @open-modal 로 써보거나 openModal이벤트 발생하는거맞는지 콘솔창에 출력같은거 해봅시다
    
    라는 답글을 보고 수정 후 타이틀을 눌러도 콘솔창에 아무거도 뜨지않네요..
    
    혹시 전체코드를 메일이나 다른방법으로 제공해주실수는없는건가요..?
    #87554

    김진우
    참가자

    <h2>각각 코드 입니다.</h2>
    <h2>App.vue </h2>

    <template>
    <div v-if="1 == 2">
     안녕하세요
    </div>
    <div v-else-if="1 == 3">
    <!-- if문 연달아 여러개 쓰고 싶을때 사용(자바스크립트 if문과 같음) -->
     안녕하세요2
    </div>
    <div v-for="(a,i) in 원룸들" :key="i">
    
    <h4 @click="모달창열렸니 = true; 누른거 = i">{{ a.title }}</h4>
    <p>{{ a.price }}원</p>
    </div>
    <Modal :원룸들="원룸들" :누른거="누른거" :모달창열렸니="모달창열렸니"/>
    <div class="menu">
    <!-- v-for="작명 in 횟수" :key="작명" key안에 작명은 v-for작명과 이름 동일하게 -->
    {{ a }}
    </div>
    <Discount v-bind="오브젝트" :이름="오브젝트.name" :나이="오브젝트.age"/>
    <Card @openModal="모달창열렸니 = true" :원룸="원룸들[i]" v-for="(작명,i) in 원룸들" :key="작명"/>
    <!-- <Card :원룸="원룸들[1]"/>
     <Card :원룸="원룸들[2]"/>
     <Card :원룸="원룸들[3]"/>
     <Card :원룸="원룸들[4]"/>
     <Card :원룸="원룸들[5]"/> -->
    </template>
    <script>
    import data from './assets/oneroom.js';
    import Discount from './Discount.vue';
    import Modal from './Modal.vue';
    import Card from './Card.vue';
    export default {
    name: 'App',
    // 데이터보관함 아래처럼 data, return 으로 생성
    data(){
    return{
    오브젝트 : { name : 'kim', age : 20 },
    누른거 : 0,
    원룸들 : data,
    모달창열렸니 : false,
    신고수 : [0,0,0],
    메뉴들 : ['Home', 'Shop', 'About'],
    products : ['역삼동원룸', '천호동원룸', '마포구원룸'],
    }
    },
    methods : {
    increase(){
    this.신고수 += 1;
    },
    },
    components: {
    Discount : Discount,
    Modal : Modal,
    Card : Card,
    }
    }
    </script>
    <style>
    body {
    margin: 0;
    }
    div {
    box-sizing: border-box;
    }
    .discount {
    background: #eee;
    padding: 10px;
    margin: 10px;
    border-radius: 5px;
    }
    .black-bg {
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.5);
    position: fixed; padding: 20px;
    }
    .white-bg {
    width: 100%; background: white;
    border-radius: 8px;
    padding: 20px;
    }
    .room-img {
    width: 100%;
    margin-top: 40px;
    }
    #app {
    font-family: Avenir, Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-align: center;
    color: #2c3e50;
    }
    .menu{
    background: darkslateblue;
    padding: 15px;
    border-radius: 5px;
    }
    .menu a {
    color: white;
    padding: 10px;
    }
    </style>

    <h2>Card.vue</h2>

    <template>
    <div>
    
    <h4 @click="$emit('openModal')">{{원룸.title}}</h4>
    <p>{{원룸.price}}원</p>
    </div>
    </template>
    <script>
    export default {
    props : {
    원룸 : Object,
    }
    }
    </script>
    <style>

    <h2></style> Modal.vue</h2>

    <template>
    <div class="black-bg" v-if="모달창열렸니 == true">
    <!-- v-if는 조건식, 위문장을 해석해보면, 안에있는 조건식이 참일때만 DIV를 보여줌-->
    <div class="white-bg">
    
    <h4>{{ 원룸들[누른거].title }}</h4>
    <p>{{ 원룸들[누른거].price }}원</p>
    <!-- <button @click="모달창열렸니 = false">닫기</button> -->
    </div>
    </div>
    </template>
    <script>
    export default {
    name : 'Modal',
    props : {
    원룸들 : Array,
    누른거 : Number,
    모달창열렸니 : Boolean,
    }
    }
    </script>
    <style>
    </style>
    #87558

    codingapple
    키 마스터
    캡처1
    
    코드 붙여넣어보니까 모달창은 밑에 잘 뜨는데 css에 뭔가 이상한게 있나봅니다
    아니면 모달 컴포넌트를 더 위로 올립시다
    #87559

    김진우
    참가자
    <Modal :원룸들="원룸들" :누른거="누른거" :모달창열렸니="모달창열렸니"/>
    를 <template>바로 밑에뒀더니 클릭시 모달창이 뜹니다!
    
    그런데 선생님 따라서 똑같이 코딩했는데, 왜 선생님은 나오고 저는 안나오고 Modal 컴포넌트 위치를 조정해야 보이는건가요???
    #87611

    codingapple
    키 마스터
    position : fixed 넣은건 좀 위에 넣는게 원래 잘보입니다
    #87676

    김진우
    참가자
    답변 정말 감사합니다!!
6 글 보임 - 1 에서 6 까지 (총 6 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠