Używam Bootstrap V4 i następujący błąd jest rejestrowany w konsoli;
Błąd: etykiety narzędzi Bootstrap wymagają Tether ( http://github.hubspot.com/tether/ )
Próbowałem usunąć błąd, instalując Tether, ale to nie zadziałało. „Zainstalowałem” Tether, dołączając następujące wiersze kodu;
<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>
Czy poprawnie zainstalowałem tethering?
Czy ktoś może mi pomóc usunąć ten błąd?
Jeśli chcesz zobaczyć błąd w mojej witrynie, kliknij tutaj i załaduj konsolę.
javascript
twitter-bootstrap
bootstrap-4
tether
Michael LB
źródło
źródło
Odpowiedzi:
Dla stabilnej wersji Bootstrap 4:
Ponieważ beta Bootstrap 4 nie zależy od Tether, ale Popper.js . Wszystkie skrypty ( muszą być w tej kolejności):
Zobacz aktualną dokumentację dla najnowszych wersji skryptów.
Tylko Bootstrap 4 alpha:
Bootstrap 4 alpha potrzebuje Tether , więc
tether.min.js
przed dołączeniem musisz załączyćbootstrap.min.js
np.źródło
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
biblioteki. Czy nadal się wyświetla, jeśli to skomentujesz? Tak, zadałbym nowe pytanie, jeśli Google nie ma rozwiązania. :)https://npmcdn.com/[email protected]/dist/
orazhttps://npmcdn.com/[email protected]/dist/
Jeśli używasz Webpack:
webpack.config.js:
Źródło
źródło
Jeśli używasz npm i browserify:
źródło
Osobiście używam niewielkiego podzbioru funkcji Bootstrap i nie muszę podłączać Tethera.
To powinno pomóc:
źródło
window.Tether = window.Tether || {};
? Ponadto w rozwiązaniu jest zastrzeżenie, że może ono wymazać już zdefiniowaną zależność w zakresie globalnym, jeśli moduł zostanie załadowany przed wykonaniem Twojej rzeczy.window.Tether = window.Tether || {};
jest gorzej bo wyrzuciTether is not a function
zamiast sensownego błędu.Jeśli chcesz uniknąć komunikatu o błędzie i nie korzystasz z podpowiedzi narzędzia Bootstrap, możesz zdefiniować window.Tether przed załadowaniem Bootstrap.
źródło
window.Tether = {}; define(['tether'], function (Tether) { return window.Tether = Tether; });
Powinieneś zrobić moją wskazówkę:
1. Dodaj poniższe źródło do Gemfile
Uruchom polecenie:
instalacja pakietu
Dodaj tę linię po jQuery w application.js.
// = wymagają jquery
// = wymagają powiązania
Zrestartuj serwer szynowy.
źródło
Zainstaluj tether przez npm, jak poniżej
następnie dodaj tether do swojego html powyżej bootstrap, jak poniżej
źródło
bower install tether --save-dev
npm install tether --save
zamiast tego--save-dev
? Będzie potrzebny również w produkcji.W przypadku webpacka rozwiązałem to za pomocą
webpack.config.js
:źródło
Dodatkowa uwaga. Jeśli zaznaczysz nieskompresowany plik javascript, znajdziesz warunek:
Więc komunikat o błędzie zawiera wymagane informacje.
Wersja nieskompresowana:
https://rawgit.com/HubSpot/tether/master/src/js/tether.js https://rawgit.com/HubSpot/tether/master/dist/css/tether.css
źródło
Używając webpacka, użyłem tego w
webpack.config.js
:Wygląda na
Tether
to, że to ten, którego szukał:źródło
tether: 'tether',
Miałem ten problem z requirejs przy użyciu najnowszej kompilacji Boostrap 4. Skończyło się na tym, że zdefiniowałem:
w moim tagu head html, aby oszukać test bootstrapa. Następnie dodałem drugą instrukcję wymagania, tuż przed wymaganiem, które ładuje moją aplikację, a następnie moją zależność bootstrap:
Używając obu w tandemie, nie powinieneś mieć problemu z używaniem obecnej wersji alfa bootstrap 4.
źródło
Działa dla generator-aspnetcore-spa i bootstrap 4.
źródło
Do webpacka 1 lub 2 z Bootstrap 4 potrzebujesz
źródło
Jeśli korzystasz z opcji brunch, możesz dodać to na końcu swojego
brunch-config.js
:źródło
Jeśli używasz modułu ładującego require.js AMD:
źródło
Dla użytkowników Laravel Mix korzystających z Bootstrap4, będziesz musiał uruchomić
Następnie zaktualizuj,
resources/assets/js/bootstrap.js
aby załadować Tether i przenieść go do obiektu okna.Oto jak wygląda mój: (Uwaga też musiałem biec
npm install popper.js --save
)źródło
Aby dodać do odpowiedzi @ adilapapaya. W
ember-cli
szczególności dla użytkowników zainstalujtether
za następnie dołącz go do swojego
ember-cli-build.js
pliku przed bootstrapem, na przykład:źródło
A jeśli używasz webpacka, będziesz potrzebować wtyczki expose. W swoim webpack.config.js dodaj ten program ładujący
źródło
Miałem ten sam problem i tak go rozwiązałem. Jestem na szynach 5.1.0rc1
Upewnij się, że dodałeś require jquery i tether w pliku application.js, muszą one znajdować się na samej górze, tak jak to
Po prostu upewnij się, że masz zainstalowany tether
źródło
Metoda nr 1 : Pobierz stąd i wstaw ją do swoich projektów lub
Metoda nr 2 : użyj poniższego kodu przed źródłem skryptu bootstrap:
źródło
Polecam postępować zgodnie z instrukcjami w dokumentacji Bootstrap 4 :
źródło
Rozwiązanie UMD / AMD
Dla tych gości, którzy robią to przez UMD i kompilują przez
require.js
, jest lakoniczne rozwiązanie.W module, który wymaga
tether
jako zależności, która ładuje sięTooltip
jako UMD, przed definicją modułu, wystarczy umieścić krótki fragment definicji Tether:Ten krótki fragment na samym początku, właściwie może być umieszczony na dowolnym wyższym poziomie aplikacji, najważniejsze - aby wywołać go przed faktycznym użyciem
bootstrap
komponentów zTether
zależnościami.UPD: W Boostrap 4.1 Stable zastąpili Tether przez Popper.js , zobacz dokumentację użycia .
źródło
Miałem ten sam problem i rozwiązałem go, dołączając jquery-3.1.1.min przed dołączeniem js i działało to jak urok. Mam nadzieję, że to pomoże.
źródło