Tengo api en el nodo js y lo llamo wit vue. Cuando lo llamo i y obtengo los resultados, lo analizo e intento insertarlo en la propiedad de la clase para que pueda pasarse a un componente, pero la propiedad no está definida y aparece este error.
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'push')Este es el código.
<template> <div class="home"> <!-- <BlogPostCard v-for="blogPost in blogPosts" :key="blogPost.Id" /> --> </div> </template> <script lang="ts"> import { Options, Vue } from 'vue-class-component' import BlogPostCard from '@/components/BlogPostCard.vue' import BlogPostModel from '../models/blogPostModel' import fetch, { RequestInit } from 'node-fetch' @Options({ components: { BlogPostCard } }) export default class AllBlogPostsView extends Vue { blogPosts!: BlogPostModel[] async beforeMount () { await this.getPosts() } async getPosts () { const requestOptions: RequestInit = { method: 'GET', redirect: 'follow' } const response = await fetch('http://localhost:4000/blog/all', requestOptions) const result = await response.json() for (let i = 0; i < result.length; i++) { const blogpost = result[i] const id: number = blogpost.Id const title: string = blogpost.Title const content: string = blogpost.Content const blogPostModel = new BlogPostModel(id, title, content) console.log(this.blogPosts) this.blogPosts.push(blogPostModel) } } } </script>Corrija cambiando blogPosts!: BlogPostModel[] a blogPosts: BlogPostModel[] = []