1

Estoy intentando obtener el tiempo actual con moment en vue 3 con composition api, cree una function en mi useComposition asi:

import moment from "moment"

export default function (){
  //Funcion para obtener el tiempo actual, tiempo al crear o editar un registro
  const horaActual = ()=> {
    const hoy = moment()
    console.log(hoy.toString())
   }

  return { ...toRefs(state), apartments, horaActual, resetFilters, paginateEntrusts }
}

luego en mi component EntrustForm.vue

importo y uso

<script>
    import TextInput from "../../UI/Tenant/TextInput";    
    import useEntrust from "../../../composables/Tenant/EntrustRegistration/useEntrust"
   
    export default {
        name: "EntrustForm",
        components: { SubmitButton, TextInput },        

        setup(){ 
                
         const { entrusts, horaActual } = useEntrust();
        
         return {
                 entrusts,
                 horaActual
             }
         },
    }
</script>

Luego en mi input me gustaria cargar esta fecha, sin embargo al intentar llamarla no me funciona, me arroja un error

es en este input donde me gustaria cargar la fecha al abrir mi vista create

<div class="col-span-6 sm:col-span-3 lg:col-span-3">
    <label for="fecha" class="block text-sm font-medium text-gray-700 dark:text-gray-200">Fecha recepción</label>
    <text-input name="fecha" :model="fecha" @input="$emit('update:fecha', $event.target.value)" autocomplete="family-name" class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm sm:text-sm border border-gray-300 rounded-md" />
    <p>{{horaActual}}</p>
</div>

en mi main.js tengo la importacion asi:

import moment from  'moment'

moment.locale('es')

createApp(App)
.use(store)
.use(storeTenant)
.use(router)
.use(moment)
.mount('#app')

mi consulta es como logro cargarlo y resolver este problema?

introducir la descripción de la imagen aquí

1 respuesta 1

1

Los errores son los siguientes:

  • horaActual es una función, pero al imprimirla no la estas ejecutando.
  • horaActual no devuelve nada, sino que hace un console.log

Solución:

  • Modificar la función horaActual para que devuelva algo:

    const horaActual = ()=> {
      return moment().toString()
    }
    
  • Imprimir el resultado de ejecutar horaActual

    <p>{{horaActual()}}</p>
    

¿No es la respuesta que buscas? Examina otras preguntas con la etiqueta o formula tu propia pregunta.