当我使用\ nuxt \ strapi \ nuxt / apollo时,它总是告诉无法读取未定义的属性“ content”。 如果我刷新页面就可以了!
为什么?
我该怎么做?
这是我的密码
<template>
<div>
<div class="about-content">
<div id="zwqkl" v-html="$md.render(aboutuses[0].content)"></div>
</div>
</div>
</template>
<script>
import aboutusQuery from '~/apollo/queries/aboutus/aboutus'
export default {
name: 'about-us',
data() {
return {
aboutuses: []
}
},
apollo: {
aboutuses: {
query: aboutusQuery
}
}
}
</script>
答案 0 :(得分:0)
您可以尝试预取结果吗?
apollo: {
prefetch: true,
aboutuses: {
query: aboutusQuery
}
}
答案 1 :(得分:0)
这回答了您的问题:Nuxt JS Apollo data only available after page refresh
关键是使用“ $ loadingKey”属性。我已相应地更新了您的代码。
<template>
<div>
<div v-if="!loading" class="about-content">
<div id="zwqkl" v-html="$md.render(aboutuses[0].content)"></div>
</div>
</div>
</template>
<script>
import aboutusQuery from '~/apollo/queries/aboutus/aboutus'
export default {
name: 'about-us',
data() {
return {
loading: 0,
aboutuses: []
}
},
apollo: {
$loadingKey: 'loading',
aboutuses: {
query: aboutusQuery
}
}
}
</script>