반응형
vue.js에서 개체를 포함하는 데이터 어레이를 표시하는 방법
내 vue 컴포넌트는 다음과 같습니다.
<template>
...
<ul v-if="!selected && keyword">
<li v-for="state in filteredStates" @click="select(state.name)">{{ state.name }}</li>
</ul>
...
</template>
<script>
export default {
...
computed: {
filteredStates() {
const data = this.$store.dispatch('getProducts', {
q: this.keyword
})
data.then((response) => {
console.log(response.data)
return response.data
})
}
}
}
</script>
console.log(response.data)의 결과는 다음과 같습니다.
위 그림과 같이 어레이 데이터를 표시하고 싶습니다.하지만 그것은 가치를 보여주지 않는다.vue 컴포넌트의 루프가 아직 잘못되었을 수 있습니다.
어떻게 하면 이 문제를 해결할 수 있을까요?
filteredStates
는 비동기 API 요청을 수행하므로 계산된 속성에서는 이 작업을 수행할 수 없습니다(사실 해당 속성에서 아무것도 반환하지 않으므로 사용할 수 없습니다).
당신이 만들어야 한다.filteredStates
데이터 속성에서 변경 사항을 확인합니다.keyword
그 후 업데이트하다filteredStates
응답으로.
예를 들어 다음과 같습니다.
data() {
return {
filteredStates: []
}
},
watch: {
keyword(value) {
this.$store.dispatch('getProducts', { q: value })
.then(res => {
this.filteredStates = res.data;
})
}
}
언급URL : https://stackoverflow.com/questions/47877750/how-to-display-an-array-of-data-containing-objects-in-vue-js
반응형
'IT이야기' 카테고리의 다른 글
Vue: 새로운 사후 대응 속성을 추가하기 위한 다른 옵션? (0) | 2022.07.23 |
---|---|
v-model에서 입력 유형="file"을 지원하지 않습니다. (0) | 2022.07.23 |
C와 C++ 양쪽에서 유효한 코드가 각 언어로 컴파일되었을 때 다른 동작을 발생시킬 수 있습니까? (0) | 2022.07.23 |
vuejs에서 개체가 확장 가능하지 않음 오류입니다. (0) | 2022.07.23 |
1개의 클래스 vue.js 2에 2개의 조건을 추가하려면 어떻게 해야 하나요? (0) | 2022.07.23 |