Estoy tratando de llamar a una propiedad calculada (que se basa en una variable de datos que se establecerá desde json entrante) al crear la página, pero dice que no puede leer los datos para 'indefinido'. Esto se debe a que los datos que necesito no están completamente cargados, estoy bastante seguro. Cuando lo configuro para que se ejecute 2 segundos después de creado (), funciona bien.
¿Cómo puedo configurar esto cuidadosamente para que solo ejecute la función en mi variable de datos una vez, pero SOLO una vez que los resultados de los datos estén realmente configurados?
<div id="app"> <div v-for="(value, employee) in employeeFunction" :key="employee"> @{{value}} </div> </div> <script> var vm = new Vue({ el: "#app", data: { results: [ {//data is in here } ], }, created: function(){ this.interval = setInterval(() => this.employeeFunction(), 2000); }, computed: { employeeFunction() { console.log('employee data') employeeResults = this.results console.log(employeeResults) return employeeResults }, } }); </script>En lugar de usar el gancho de ciclo de vida created() , intente con mounted()