Antwort
Aug 19, 2017 - 14:01
var ts = new Date();
var s = ts.toLocaleString("de-DE");
10:33:24Skript Neues Skript hat gestartet.
10:33:24 # # Fatal error in , line 0 # Failed to create ICU date format, are ICU data files missing? # ==== C stack trace =============================== 1: v8::Unlocker::~Unlocker() 2: v8::FixSourceNWBin(v8::Isolate*, v8::Local) 3:
10:33:24v8::FixSourceNWBin(v8::Isolate*, v8::Local) 4: 0x158b30c0961b
10:33:24Skript Neues Skript hat geendet.
var moment = require('moment');
var ts = new Date();
var s = moment(ts).format('YYYYMMDD');
10:42:02Skript Neues Skript hat gestartet.
10:42:03{ [Error: Cannot find module 'moment'] code: 'MODULE_NOT_FOUND' }
10:42:03ipc error finish null
10:42:03Skript Neues Skript hat geendet.
Mit dieser Anweisung sollte ein Datum in lokale Notation ausgegeben werden.
Analog schlägt die Formtierung mit den anderen Funktionen (Intl.DateTimeFormat) fehl.
Hat jemand hierzu eine Idee?
Ich habe das sowohl mit meinem Gateway V5+ mit der aktuellen Firmware probiert als auch mit einem NEO-Server mit Version 2.0.5 und der aktuellen 2.1.
Natürlich ist kann ich die Zeit selbst mit den einzelnen Datums- und Zeit-Funktionen selbst zusammenbauen, aber das scheint mir doch ein Fehler zu sein.
Ich habe auch versucht, das Datum mit moment.js zu formatieren, diese Modul steht aber anscheinend nicht zur Verfügung (obwohl es in den Modules vom NEO-Server enthalten ist).
Haben Sie die gleiche Frage? Dieser Frage folgen
Von
hallo,
sorry, hatte ich mich nicht klar ausgedrückt, die Formatierung "zu Fuss" war kein Problem
curDate = ('0' + d.getDate()).slice(-2) + '.' + ('0' + (d.getMonth() + 1)).slice(-2) + '.' + d.getFullYear();
sunrise = d.toTimeString().slice(0,5);
Die Fehlermeldung deutet lt. internet auf fehlende Lokalisierung-Dateien hin - und 'moment' wäre schon ein prima Modul um Zeitstempel mit wenig Aufwand auszugeben.
Aber auf jeden Fall danke für den Tip.
Neuen Kommentar hinzufügen