Ich verwende Bootstrap V4 und der folgende Fehler wird in der Konsole protokolliert.
Fehler: Bootstrap-Tooltips erfordern Tether ( http://github.hubspot.com/tether/ )
Ich habe versucht, den Fehler durch die Installation von Tether zu beheben, aber es hat nicht funktioniert. Ich habe Tether durch Einfügen der folgenden Codezeilen "installiert".
<link rel="stylesheet" href="http://www.atlasestateagents.co.uk/css/tether.min.css">
<script src="http://www.atlasestateagents.co.uk/javascript/tether.min.js"></script>
Habe ich den Haltegurt richtig installiert?
Kann mir jemand helfen, diesen Fehler zu beheben?
Wenn Sie den Fehler auf meiner Website anzeigen möchten, klicken Sie hier und laden Sie Ihre Konsole.
javascript
twitter-bootstrap
bootstrap-4
tether
Michael LB
quelle
quelle
Antworten:
Für Bootstrap 4 stabil:
Da Beta Bootstrap 4 nicht von Tether abhängt, sondern von Popper.js . Alle Skripte ( müssen in dieser Reihenfolge sein):
In der aktuellen Dokumentation finden Sie die neuesten Skriptversionen.
Nur Bootstrap 4 Alpha:
Bootstrap 4 alpha benötigt Tether , daher müssen Sie einschließen ,
tether.min.js
bevor Sie einschließenbootstrap.min.js
, z.quelle
mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create'
bootstrap.min.js
Bibliothek. Wird es immer noch angezeigt, wenn Sie es auskommentieren. Ja, ich würde eine neue Frage stellen, wenn Google keine Lösung hat. :)https://npmcdn.com/[email protected]/dist/
undhttps://npmcdn.com/[email protected]/dist/
Wenn Sie Webpack verwenden:
webpack.config.js:
Quelle
quelle
Wenn Sie npm und browserify verwenden:
quelle
Persönlich verwende ich eine kleine Teilmenge der Bootstrap-Funktionalität und muss Tether nicht anhängen.
Dies sollte helfen:
quelle
window.Tether = window.Tether || {};
? Außerdem enthält Ihre Lösung die Einschränkung, dass bereits definierte Abhängigkeiten in einem globalen Bereich gelöscht werden können, wenn das Modul geladen wird, bevor Ihr Ding ausgeführt wird.window.Tether = window.Tether || {};
ist es schlimmer, weil es werfen wirdTether is not a function
, anstatt bedeutungsvolle Fehler.Wenn Sie die Fehlermeldung vermeiden möchten und keine Bootstrap-Tooltipps verwenden, können Sie window.Tether definieren, bevor Sie Bootstrap laden.
quelle
window.Tether = {}; define(['tether'], function (Tether) { return window.Tether = Tether; });
Sie sollten meine Richtlinie
befolgen : 1. Fügen Sie Gemfile die folgende Quelle hinzu
Führen Sie den Befehl aus:
Bundle installieren
Fügen Sie diese Zeile nach jQuery in application.js hinzu.
// = erfordert jquery
// = erfordert Tether
Starten Sie den Rails-Server neu.
quelle
Installieren Sie den Haltegurt wie unten beschrieben über npm
Fügen Sie dann Ihrem HTML-Code über dem Bootstrap wie unten Tether hinzu
quelle
bower install tether --save-dev
npm install tether --save
statt sein--save-dev
? Es wird auch in der Produktion benötigt.Für das Webpack habe ich dies gelöst mit
webpack.config.js
:quelle
Ein zusätzlicher Hinweis. Wenn Sie die unkomprimierte Javascript-Datei überprüfen, finden Sie die Bedingung:
Die Fehlermeldung enthält also die erforderlichen Informationen.
Unkomprimierte Version:
https://rawgit.com/HubSpot/tether/master/src/js/tether.js https://rawgit.com/HubSpot/tether/master/dist/css/tether.css
quelle
Mit Webpack habe ich dies verwendet in
webpack.config.js
:Es scheint, als wäre
Tether
es das, wonach es gesucht hat:quelle
tether: 'tether',
Ich hatte dieses Problem mit requirejs, die den neuesten Boostrap 4-Build verwendeten. Am Ende habe ich nur definiert:
in meinem HTML-Head-Tag, um den Bootstrap-Check zu täuschen. Ich habe dann eine zweite require-Anweisung hinzugefügt, kurz bevor die Anforderung meine App lädt, und anschließend meine Bootstrap-Abhängigkeit:
Wenn Sie beide zusammen verwenden, sollten Sie kein Problem damit haben, den aktuellen Alpha-Build für Bootstrap 4 zu verwenden.
quelle
Funktioniert für Generator-Aspnetcore-Spa und Bootstrap 4.
quelle
Für Webpack 1 oder 2 mit Bootstrap 4 benötigen Sie
quelle
Wenn Sie Brunch verwenden, können Sie dies am Ende Ihres
brunch-config.js
:quelle
Wenn Sie den AMD-Loader require.js verwenden:
quelle
Für Ihre Laravel Mix-Benutzer, die Bootstrap4 ausführen, müssen Sie ausführen
Aktualisieren Sie dann
resources/assets/js/bootstrap.js
, um Tether zu laden und zum Fensterobjekt zu bringen.So sieht meine aus: (Hinweis, ich musste auch rennen
npm install popper.js --save
)quelle
Zur Antwort von @ adilapapaya hinzufügen. Für
ember-cli
Benutzer speziell installierentether
mitund fügen Sie es dann
ember-cli-build.js
vor dem Bootstrap wie folgt in Ihre Datei ein:quelle
Und wenn Sie Webpack verwenden, benötigen Sie das Expose-Plugin. Fügen Sie in Ihrer webpack.config.js diesen Loader hinzu
quelle
Ich hatte das gleiche Problem und so habe ich es gelöst. Ich bin auf Schienen 5.1.0rc1
Stellen Sie sicher, dass Sie in Ihrer application.js-Datei "require jquery and tether" hinzufügen. Diese müssen sich ganz oben befinden
Stellen Sie einfach sicher, dass der Haltegurt installiert ist
quelle
Methode 1 : Von hier herunterladen und in Ihre Projekte einfügen oder
Methode 2 : Verwenden Sie den folgenden Code vor Ihrer Bootstrap-Skriptquelle:
quelle
Ich empfehle, die Anweisungen in der Bootstrap 4-Dokumentation zu befolgen :
quelle
UMD / AMD-Lösung
Für diejenigen, die es über UMD tun und über kompilieren
require.js
, gibt es eine lakonische Lösung.In dem Modul, das
tether
als Abhängigkeit, dieTooltip
als UMD geladen wird, vor der Moduldefinition benötigt wird, setzen Sie einfach einen kurzen Ausschnitt auf die Definition von Tether:Dieses kurze Snippet am Anfang kann tatsächlich auf einer höheren Ebene Ihrer Anwendung abgelegt werden. Dies ist das Wichtigste - es vor der tatsächlichen Verwendung von
bootstrap
Komponenten mitTether
Abhängigkeit aufzurufen .UPD: In Boostrap 4.1 Stable haben sie Tether durch Popper.js ersetzt (siehe Dokumentation zur Verwendung) .
quelle
Ich hatte das gleiche Problem und löste es, indem ich jquery-3.1.1.min einfügte, bevor ich js einfügte, und es funktionierte wie ein Zauber. Ich hoffe es hilft.
quelle