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

home2 게시판 Vue 게시판 필터적용관련 질문입니다.

필터적용관련 질문입니다.

6 글 보임 - 1 에서 6 까지 (총 6 중에서)
  • 글쓴이
  • #12310

    이병현
    참가자

    몇번이고 확인해 보았는데 필터 적용이 안되는 이유를 발견하지 못해서 글 작성합니다.

    현재상황: 필터를 적용한게 발행전까지 적용이 잘 됩니다. 그리고 발행했을 때 step 0에서 사진이 필터 적용이 안되고 기본으로 뜹니다.

    app.vue 부분 어느 부분이 잘 못되었는지 확인한번 부탁드립니다.

     

    <template>
    <div>
    <div class="header">
    <ul class="header-button-left">
    <li>Cancel</li>
    </ul>
    <ul class="header-button-right">
    <li v-if="step == 1" @click="step++">Next</li>
    <li v-if="step == 2" @click="publish">발행</li>
    </ul>
      <img src="./assets/logo.png">
    </div>

    <Container @write="작성한글 = $event" :이미지="이미지" :step="step" :게시물="게시물" />
     
     
    <button @click="more">더보기</button>

    <div class="footer">
    <ul class="footer-button-plus">
    <input @change="upload" type="file" id="file" class="inputfile" />
    <label for="file" class="input-plus">+</label>
    </ul>
    </div>

     

    </div>
    </template>

    <script>
    import Container from './components/Container.vue';
    import postdata from './assets/postdata';
    import axios from 'axios';

    export default {
    name: "App",
    data(){
    return {
    step : 0,
    게시물 : postdata,
    더보기 : 0,
    이미지 : '',
    작성한글: '',
    선택한필터 : ''
    }
    },
    mounted(){
    this.emitter.on('박스클릭함', (a)=>{
    this.선택한필터 = a
    })
    },
    components: {
    Container,
    },
    methods: {
    publish(){
    var 내게시물 = {
    name: "Kim Hyun",
    userImage: "https://placeimg.com/100/100/arch",
    postImage: this.이미지,
    likes: 36,
    date: "May 15",
    liked: false,
    content: this.작성한글,
    filter: this.선택한필터
    };
    this.게시물.unshift(내게시물);
    this.step = 0;
    },
    more(){
    axios.get('https://codingapple1.github.io/vue/more${this.더보기}.json')
    .then( 결과 => {
    console.log(결과.data);
    this.게시물.push(결과.data);
    this.더보기++;
    })
    },
    upload(e){
    let 파일 = e.target.files;
    console.log(파일[0]);
    let url = URL.createObjectURL(파일[0]);
    console.log(url);
    this.이미지 = url
    this.step++;
    }
    },
    };

     

    #12319

    codingapple
    키 마스터

    메인페이지에 있는 게시물들은 <Post> 컴포넌트 안에 있지 않겠습니까

    거기 있는 사진에 필터명을 클래스명으로 씌웠는지 확인해야할듯요 

    #12355

    이병현
    참가자

    콘테이너 코드입니다.

     

    <template>
    <div>

    <div v-if="step == 0">
    <Post :선택한필터="선택한필터" :게시물="게시물[i]" v-for="(a,i) in 게시물 " :key="i" />
    </div>

    <!-- 필터선택페이지 -->
    <div v-if="step == 1">
    <div :class="선택한필터" class="upload-image" :style="'background-image:url(${이미지})'"></div>
    <div class="filters">
    <FilterBox :필터="필터" v-for="필터 in 필터들" :key="필터" :이미지="이미지">
    <span>{{필터}}</span>
    </FilterBox>
    </div>
    </div>

    <!-- 글작성페이지 -->
    <div v-if="step == 2">
    <div :class="선택한필터" class="upload-image" :style="'background-image:url(${이미지})'"></div>
    <div class="write">
    <textarea @input="$emit('write', $event.target.value)" class="write-box">write!</textarea>
    </div>
    </div>

    </div>
    </template>

    #12356

    이병현
    참가자

    Post 코드입니다.

     

    <template>
    <div class="post">
    <div class="post-header">
    <div class="profile"></div>
    <span class="profile-name">{{게시물.name}}</span>
    </div>
    <div class="post-body" :style="{ backgroundImage : 'url(${게시물.postImage})' }" ></div>
    <div class="post-content">
    <p>{{게시물.Likes}} Likes</p>
    <p><strong>{{게시물.name}}</strong> {{게시물.content}}</p>
    <p class="date">May 15</p>
    </div>
    </div>
    </template>

    #12360

    codingapple
    키 마스터

    <div class="post-body" 이게 게시물의 메인 사진일텐데 

    여기에 class 명으로 선택한 필터명을 기입해주면 인스타그램 필터가 씌워집니다

    수업시간에 안보여드린 내용이라 직접 코드를 짜보도록 합시다

    #12361

    이병현
    참가자

    감사합니다.

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 호 / 개인정보관리자 : 박종흠