Estoy ejecutando algunas comprobaciones en un valor que se pasa a un timePicker en mi aplicación nativa de reacción, y quiero tomar un valor de tiempo como 14:29
, que viene como una string
, y convertirlo en un valor que pasar un moment(val).isValid()
comprobar.
¿Cómo puedo, por ejemplo, simplemente tomar la fecha de hoy, pero configurar la hora para que tenga este valor de 14:29
?
Intenté esto pero sale un error:
let val = '14:29'; this._value = moment(new Date()).startOf(val);
const input = '14:29'; const [hour, minute] = input.split(':'); const myMoment = moment() .set({ hour, minute }) .startOf('minute'); console.log( { myMoment, isValid: myMoment.isValid() } )
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
Nota: esto respetará la zona horaria del navegador, lo que significa que diferentes usuarios obtendrán diferentes momentos en el tiempo, dependiendo de la zona horaria establecida actualmente en su sistema.
Para establecer una zona horaria en particular, es posible que desee utilizar .tz()
. Documentos: zona horaria del momento .