반응형
Vue.js: API에서 데이터를 가져와 하위 컴포넌트에 전달(간단한 예)
상위 컴포넌트의 axios 패키지를 사용하여 Ajax 요청을 하고 반환된 어레이를 하위 컴포넌트에 전달하여 어레이를 반복하고 레이아웃을 구축합니다.나는 다음과 같은 코드를 가지고 있습니다.
부모는 다음과 같습니다.
<script>
import Box from './Box';
import axios from 'axios';
export default {
name : "messagespainel",
data: function() {
return {messsages: []} //should I use data to pass the ajax returned array to the child
},
props: ['messages'] //should I use props to pass the ajax returned array to the child
}
mounted :
{
axios.get('http://www.omdbapi.com/?s=star&apikey=mykey').then(response => { this.messsages = response.data.Search});
}
</script>
<template>
<div>
<box messages="this.messages"></box> My mind bugs at this point. How to refer to messages?
</div>
</template>
아이는 다음과 같습니다.
<script>
export default {
name: "box",
props: ['mensagens']
}
</script>
<template>
<div>
<div v-for="message in messages" >
{{ message}}
</div>
</div>
</template>
<style>
</style>
당신의 부모에게, 당신의 부모에게,messages
소품으로서 자녀에게 전달하는 데이터 속성입니다.
import Box from './Box';
import axios from 'axios';
export default {
name : "messagespainel",
data: function() {
return {messages: []}
},
mounted() {
axios.get('http://www.omdbapi.com/?s=star&apikey=mykey')
.then(response => { this.messages = response.data.Search});
}
}
템플릿에서 속성을 바인딩해야 합니다.
<box v-bind:messages="messages"></box>
또는
<box :messages="messages"></box>
아이가 신고해야 합니다.messages
소유물로써.
export default {
name: "box",
props: ['messages']
}
언급URL : https://stackoverflow.com/questions/47741770/vue-js-getting-data-from-the-api-and-passing-it-to-a-child-component-simple-ex
반응형
'source' 카테고리의 다른 글
ArrayList.clear()와 ArrayList.removeAll()의 차이점은 무엇입니까? (0) | 2022.07.26 |
---|---|
Vue 3 클래스 기반 API, 함수 기반 API, 리액티브 API 및 컴포지션 API란 무엇입니까? (0) | 2022.07.23 |
C에서 새로운 변수를 선언할 수 있는 경우와 선언할 수 없는 경우 (0) | 2022.07.23 |
선택 변경 시 Vue 구성 요소가 업데이트되지 않는 이유 (0) | 2022.07.23 |
클래스 JavaLaunchHelper는 양쪽에서 구현됩니다.libinstrument.dylib.둘 중 하나가 사용됩니다.정의되지 않은 것 (0) | 2022.07.23 |