Клонировал репу.
возникает вопрос, почему ты думаешь, что в async fetch() у тебя есть store???
покрутил, чтобы запустилось. получилось так.
<script>
import {mapGetters} from 'vuex'
export default {
async fetch() {
if (this.copters.length === 0) {
await this.$store.dispatch('copters/fetch')
}
},
data: () => ({
pageTitle: 'Users page'
}),
computed: {
...mapGetters('copters', ['copters']),
},
methods: {
openUser(user) {
this.$router.push('/copters/' + user.id)
}
}
}
</script>
А почему ты не хочшь использовать nuxt-link, а пушишь в роутер?