Ich habe gerade das Formular [email protected] zu [email protected] in meiner Ember.js Anwendung aktualisiert und jetzt bekomme ich einen Fehler, der Moment ist nicht definiert, wenn ich moment() in die Konsole oder schließe sie in meine Skripte ein.moment.js Moment ist undefined
In den Dokumenten habe ich gesehen "Seit 2.4.0 ist das global exportierte Momentenobjekt veraltet." was ich denke ist das Problem hier, aber ich bin mir nicht sicher, wie ich global Moment in Ember setzen kann, so dass alle Verweise auf Moment() in unserer Code-Basis derzeit nicht gebrochen sind.
Ich habe versucht, die Zeile, wo wir gerade waren, zu aktualisieren ('Moment'), um var Moment = erfordern ('Moment'), aber es hat das gleiche Ergebnis. Selbst wenn ich einen Debugger direkt hinter die Zeile var moment = ... lege und dann moment() in die Konsole gebe, bekomme ich immer noch diesen Moment nicht definiert.
Es muss etwas anderes sein, etwas, das mit requirejs in Konflikt steht? Ich habe vor ein paar Tagen eine Seite mit Moment 2.7.0 zum Testen eingerichtet, die buchstäblich nur '' in der Konsole enthält. Irgendwelche Fehler, die vor der Eingabe von Moment() geworfen werden? Vielleicht überprüfen Sie das Netzwerkprotokoll, um zu sehen, ob es geladen wird ... – Lex
Welchen Geschmack von Glut verwenden Sie? Wenn Sie einen Build wie eak oder ember-cli verwenden, müssen Sie 'moment' im globalen Namespace aktivieren. Hast du das schon gemacht? – Grapho
Ich verfolgte das Problem bis zum Loader Require-Modul des Knotens, das den Kontext nicht auf den erwarteten Moment setzt. Es setzt den Kontext auf den neuen Kontext {}. Dann im Augenblick prüft es, ob die Variable global definiert ist und wenn nicht (was nicht in meinem Fall ist), dann wird Moment die Momentvariable für das Objekt "this" setzen, das auf Kontext {} und nicht auf Fenster gesetzt wird . Die Ergebnisse werden momentan definiert, aber nicht auf globaler Ebene. Durch Ändern der letzten Zeile in der moment.js von Call (this) zu Call (window) funktioniert es jetzt. – Efarley