5
Sto usando il codice successivo per convertire una data ricevuta da un formato di database MySQL 1993-10-23 00:00:00
e visualizzarli in spagnolo:MomentJS in spagnolo
alert(moment('1993-10-23 00:00:00', 'YYYY-MM-DD', 'es'));
23 PTOM sabato. Mi aspetto di ottenere sábado
ma ottengo il prossimo:
Sat Oct 23 1993 00:00:00 GMT+0200
provato anche aggiungendo: moment.locale('es-ES');
, moment.locale('en-ES');
e moment.locale('es');
ma né opere.
Qual è il modo corretto di convertire le date da una lingua a un'altra?
Stai utilizzando la sintassi per l'analisi di una stringa, non emetterlo. Vuoi [* moment() .format() *] (http://momentjs.com/docs/#/displaying/format/). Prestare attenzione ai formati ISO 8601 senza fuso orario, vengono trattati in modo diverso da ES5 (UTC) ed ES6 (locale). – RobG
@RobG grazie, controlla la risposta, c'è qualcosa da aggiungere per il formato ISO? – Alpha2k
ISO 8601 afferma che le date con un fuso orario mancante devono essere considerate locali, mentre ES5 dice di trattarle come UTC. ES6 cambia per essere coerente con ISO. Per sicurezza, dovresti usare "1993-10-23T00: 00: 00Z" se vuoi che venga trattato come UTC. Aggiungi il fuso orario richiesto se desideri qualcos'altro e analizzalo con Moment.js (o scrivi la tua funzione a 2 o 3 linee). L'analisi di Javascript analizza solo ISO 8601 UTC. – RobG