0
사진을 선택하는 데 vue 구성 요소를 만들었습니다. 사용자가 사진을 클릭하면 사진의 ID가 구성 요소 안의 숨겨진 입력 필드에 지정됩니다.Vue.js 동일한 구성 요소 문제의 여러 인스턴스
이제이 구성 요소를 동일한 페이지에서 다른 데이터로 두 번 사용했습니다. 문제는 한 구성 요소의 사진을 클릭하면 두 구성 요소의 입력 필드 값이 업데이트됩니다. vue.js 버전을 사용하고 있습니다. 2.1.10 다음은 구성 요소의 단순화 된 버전입니다. 나는 HTML에서 사용하고 방법
<div>
<input type="hidden" :name="inputName" :value="currentSelectedPhoto.id">
<div v-for="photo in photos">
<div v-on:click="updateSelectedPhoto(photo)">
<img :src="photo.photo_url" />
</div>
</div>
</div>
컴포넌트는
export default {
props: {
...
},
methods: {
getPhotos(){
...
},
updateSelectedPhoto(photo){
this.currentSelectedPhoto = photo;
}
}
}
이것은 당신이 둘 사이의 상태 개체를 공유하고 있기 때문에
당신의 codepen 샘플을 기반으로<div>
<div>
Profile Photo
<photo-selector
photos="{{ $photos }}"
input-name="profile_photo_id"
>
</photo-selector>
</div>
<div class="col-sm-4">
Cover Photo
<photo-selector
photos="{{ $otherPhotos }}"
input-name="cover_photo_id"
>
</photo-selector>
</div>
</div>
당신이 재현 예를 만들 수 : 10 뷰 변이 초기 상태 개체 당신이 필요하므로, (반응 게터 등에 싸서)
data()
사용하는 예를 들어 신선한 상태 개체를 반환? 나는 시도 할 때 그 행동을 보지 못한다. (Vue 2.1.10) : https://codepen.io/anon/pen/aWVYpm – Matt안녕하세요 @Matt 펜을 만들었습니다. https://codepen.io/sajjad26/ 펜/qmVYLv –