timezones moment examples change buenos aires javascript angularjs timezone momentjs angular-moment

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.js es solo el script. No contiene datos de zona horaria. Si usa esta distribución, se espera que moment.tz.add sus propios datos de zona horaria, ya sea por moment.tz.add o moment.tz.load , como se describe en los documentos.

  • moment-timezone-with-data.js incluye 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.js incluye 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.