Ich habe die Foundation über die jspm install foundation installiert und dann die Foundation importiert und jquery.
Das Problem, das ich habe ist, dass wenn ich jquery über import $ as 'jquery'
importiere, bekomme ich den Fehler jquery_1.default ist keine Funktion. Wenn ich jquery über import * as $ from jquery
importiere, funktioniert es wie erwartet
Ich rufe $(document).foundation();
an, um Javascript-Komponenten zu initialisieren. Unten ist mein main.ts
Der Rest des Codes ist nur Standardnavigation zu einer einfachen Seite, die eine Basis-Navigationsleiste mit Dropdown-Liste
enthältHinweis: Ich musste jQuery auch explizit installieren, obwohl jquery als dep aufgelistet ist.
Ich habe die ursprüngliche Überschreibung für Foundation 6 gemacht, habe eindeutig etwas falsch gemacht, aber es schien zu der Zeit zu funktionieren. Jedoch habe ich seither herausgefunden, dass wenn Bootstrap installiert wurde, es jquery in github: components einbaute und das schien es so zu machen, dass jquery nicht explizit installiert werden musste. Also zu der Zeit schien alles gut.
Um zu reproduzieren, verwenden Sie einfach das Aurelia-Skelett und fügen Sie eine Seite mit einem Basissteuerelement hinzu, indem Sie $ (document) .foundation () wie oben
hinzufügenIch glaube, das ist ein Problem mit dem Typoskript. Von dem, was ich sagen kann, respektiert es nicht die Importanweisung im es6-Stil für Legacy-Code, dh Code, der keinen Export hat. Wenn Sie den alten Stil var $ = require ('jquery') verwenden, funktioniert es.
Das Problem besteht darin, das Flag --allowSyntheticDefaultImports auf true zu setzen.
Der erste Link am Ende des Typoskript-Problems beschreibt diesen Fix
Weitere Einzelheiten finden Sie in diesen Diskussionen
SystemJS und default
importieren mit export =
-Angebot
Das Importieren von Standardeinstellungen mit ES6-Syntax funktioniert nicht
Kann die Standard-Export-Syntax für Standardvariablen nicht finden
Tags und Links jquery typescript jspm systemjs