#javascript #vuejs2 #nuxt.js
#javascript #vuejs2 #nuxt.js
Вопрос:
Я хочу получать данные по AsyncData
жизненному циклу для извлечения на стороне сервера, Axios doesn't work inside AsyncData
чтобы элементы данных не перезаписывались.
есть идеи по решению этой проблемы? с уважением.
<template>
<div>
<div> messages: {{ messages }} </div>
<div> enable: {{ enable }} </div>
</div>
</template>
<script>
export default {
data () {
return {
messages: '',
enable: false
}
}
mounted (){
// Something.......
},
async asyncData () {
await this.axios.get('sample url')
.then(({result}) => {
let value = JSON.parse(result.value);
return {
messages: value.messages,
enable: value.enable,
};
});
}
}
</script>
Ответ №1:
Вы ничего не возвращаете из asyncdata. Это должно быть либо возвращением обещания, либо ожиданием данных и их возвратом
asyncData () {
return this.axios.get('sample url')
.then(({result}) => {
let value = JSON.parse(result.value);
return {
messages: value.messages,
enable: value.enable,
};
});
}