Nuxt.jsにて、
this.$nuxt.$loading.start is not a function
上記エラーの対処法になります。
mountedで【this.$nuxt.$loading.start】を使用するとエラーがでる
<script>
export default {
mounted() {
this.$nuxt.$loading.start()
setTimeout(() => this.$nuxt.$loading.finish(), 500)
}
}
</script>
上記のように、 mountedでthis.$nuxt.$loading.start
を使用するとthis.$nuxt.$loading.start is not a function
のエラーがでます。
this.$nextTickを使うことで解決
<script>
export default {
mounted() {
this.$nextTick(() => {
this.$nuxt.$loading.start()
setTimeout(() => this.$nuxt.$loading.finish(), 500)
})
}
}
</script>
上記のようにthis.$nextTick
を使用することでエラーが解消できました。
this.$nextTick
は、DOMを更新後、その更新済みのDOMに対して何らかの処理をすることが可能です。