반응형
VueX에 여러 Axios 요청을 저장하는 가장 좋은 방법은 무엇입니까?
Vue는 처음이라 여러 요청에서 데이터를 가져와 개체에 저장한 다음 데이터에 대한 몇 가지 조작을 미리 작성하는 방법을 알고 싶습니다.(형식 날짜, 통화 속성 추가 등)
예를 들어 다음과 같습니다.
예를 들어 다음과 같이 하겠습니다.
https://jsonplaceholder.typicode.com/posts/1'
https://jsonplaceholder.typicode.com/posts/2'
https://jsonplaceholder.typicode.com/posts/3'
그래서 저는 다음과 같은 것을 하고 싶습니다.
나중에 루프할 수 있도록 모든 ID를 저장하도록 상태 변수 설정
state: { ids:[1,2,3], posts:[], alteredPostsArr :[] },
요청을 루프하여 모든 데이터 저장
var dataStored = []; var ids = this.state.ids for(var i=0; i< ids.length; i++){ axios .get('https://jsonplaceholder.typicode.com/posts/'+ids[i]) .then(function(response){ dataStored.push(response.data) console.log(response.data); }) } this.state.posts = dataStored // store all results
데이터를 조작하는 함수를 만듭니다.비슷한 것
setDate :function(data){ // loop over this.state.posts for(var i=0; i< data.length; i++){ var newDataObj = { "userId": data[i].userId, "id": data[i].id, "title": data[i].title, "body": data[i].body, "date":new Date(), } this.state.alteredPostsArr.push(newDataObj ) }
}
vuex 튜토리얼을 찾아봤는데, Axios 요청 루프를 어디에 배치해야 하는지 모르겠어요...그래서 액션에 넣으려고 했는데, 빈 배열이 나오네요..
export default new Vuex.Store({
state: {
posts:[],
ids:[1,2,3],
alteredPostsArr:[],
},
methods:{
setDate:function(data){
// loop over this.state.posts
for(var i=0; i< data.length; i++){
var newDataObj = {
"userId": data[i].userId,
"id": data[i].id,
"title": data[i].title,
"body": data[i].body,
"date":new Date(),
}
this.state.alteredPostsArr.push(newDataObj )
}
}
},
actions: {
loadPosts ({ commit }) {
var dataStored = [];
var ids = this.state.ids
for(var i=0; i< ids.length; i++){
axios
.get('https://jsonplaceholder.typicode.com/posts/'+ids[i])
.then(function(response){
dataStored.push(response.data)
})
}
this.state.posts = dataStored // store all results
}
},
mutations: {
SET_POSTS (state, posts) {
state.posts = posts
}
}
언급URL : https://stackoverflow.com/questions/51557111/what-is-the-best-way-to-store-multiple-axios-requests-in-vuex
반응형
'source' 카테고리의 다른 글
Python 3: Unbound Local Error: 할당 전에 참조된 로컬 변수 (0) | 2022.09.12 |
---|---|
Python에서 다중 공백을 단일 공백으로 대체 (0) | 2022.09.12 |
sys.stdout의 차이.쓰고 인쇄할 수 있습니까? (0) | 2022.09.12 |
mariadb에 mysql 데이터베이스 Import (0) | 2022.09.12 |
관련된 반응 구성 요소 간에 통신하려면 어떻게 해야 합니까? (0) | 2022.09.12 |