programing

axios 응답 값을 변수 vue.js에 할당할 수 없습니다.

showcode 2023. 6. 14. 22:01
반응형

axios 응답 값을 변수 vue.js에 할당할 수 없습니다.

배열을 만들었습니다.lists몇 개의 문자열을 포함합니다.이제 나는 루프를 하고 싶습니다.lists(즉, in)getSubs()Axios 요청을 합니다.이 요청에는 다음 문자열이 하나 포함되어야 합니다.lists매번.

내 코드:

computed: {
  subscribers: {
    get() {
      return this.$store.state.subscribers;
    },
    set(value) {
      this.$store.commit('updateSubscribers', value);
    },
  },
},
methods: {
  getLodzkie() {
    axios
      .get(`correct_domain/lodzkietargi/get`)
      .then((response) => {
        this.subscribers = [];
        this.subscribers.push.apply(this.subscribers, response.data)
      })
      .catch(function(error) {
        console.log(error);
      })
  },
  getSubs() {
    function getSub(value) {
      axios
      .get(`correct_domain/${value}/get`)
      .then((response) => {
        this.subscribers.push.apply(this.subscribers, response.data)
      })
      .catch(function(error) {
        console.log(error);
      });
      console.log(value);
    }
    this.lists.forEach(function(entry) {
      getSub.call(null, entry);
    });
  },

getLodzkie()잘 작동합니다.

@ourmandave 정말 감사합니다.그것은 저에게 완벽한 도움이 되었습니다.

아래에 함수를 다시 작성했습니다.

getSubs() {
  let listsReqs = this.lists.map(list => {
    return axios.get(`correct_domain/${list}/get`);
  });
  axios.all(listsReqs)
  .then(axios.spread((...responses) => {
    responses.forEach(res => this.subscribers.push.apply(this.subscribers, res.data));
  })
)},

언급URL : https://stackoverflow.com/questions/54866356/cannot-assign-axios-response-value-to-a-variable-vue-js

반응형