moment - timezones javascript
Momento angular: Momento Timezone no tiene datos para America/New_York (1)
La fecha de recepción del servidor se encuentra en la zona horaria UTC y necesito convertirla a una zona horaria particular, por ejemplo: America/New_York continuación se muestra el código para el mismo
<span class="bold" ng-bind="sess.date_time | amTimezone:''America/New_York'' | amDateFormat:''h:mm a''"></span>
Pero al hacerlo, recibo el siguiente error:
Moment Timezone has no data for America/New_York. See http://momentjs.com/timezone/docs/#/data-loading/.
Pero America/New_York es una zona horaria conocida por moment pero aún así me pide que agregue la zona horaria.
Debe cargar todo lo siguiente:
- momento
- momento-timezone
- los datos de zona horaria para momento-timezone
- momento angular
En la página de inicio de time-timezone , hay disponibles tres distribuciones diferentes de momento-timezone.
moment-timezone.jses solo el script. No contiene datos de zona horaria. Si usa esta distribución, se espera quemoment.tz.addsus propios datos de zona horaria, ya sea pormoment.tz.addomoment.tz.load, como se describe en los documentos.moment-timezone-with-data.jsincluye todos los datos de zona horaria conocidos de la base de datos tz , para la versión mencionada en el sitio web.moment-timezone-with-data-2012-2022.jsincluye los mismos datos de tz, pero se trunca a solo los años 2012 a 2022. Este es un archivo de datos mucho más pequeño, y es suficiente para la mayoría de las aplicaciones del lado del navegador.
Hay versiones minificadas de cada uno también.
Entonces, si obtiene "Moment Timezone has no data for America/New_York" , dado que America/New_York es un identificador de base de datos TZ válido, entonces simplemente no ha cargado los datos para ello. Probablemente estés usando moment-timezone.js sin agregarle datos. Incluya los datos de zona horaria con moment.tz.add , o (más apropiadamente) cambie a uno de los archivos que ya incluye todos los datos de zona horaria.
Sin embargo, no hagas ambas cosas. Los datos de zona horaria solo deben cargarse una vez, y los scripts de momento-zona horaria solo deben cargarse una vez. Si utiliza moment-timezone-with-data.js o moment-timezone-with-data-2012-2022.js , no debería usar moment-timezone.js , ya que ese script ya está incluido.