Pobierz polyfill w Reakcie, który nie działa w pełni w IE 11
To pobieranie działa dobrze w Chrome:
<pre class="lang-js prettyprint-override">
fetch( this.props.url, {credentials:'same-origin'})
.then( (data) => data.json() )
.then( (data) => {
if( data.length > 0) {
// do some stuff
} else {
console.log('No data Richard of the Beard of the Lewis.');
}
});
używam
isomorphic-fetch
i wypełnię swoją obietnicę za pomocą obietnicy-polyfill. Używam WebPacka i Babel do kompilacji js.
Kiedy wykonuję ten kod w IE11, wykonywane jest wstępne pobieranie danych, a moja odpowiedź rzeczywiście zawiera żądane dane, ale w ogóle nic nie jest wykonywane w mojej todze (zastosowałem dzienniki console.logs w kilku różnych miejscach, aby sprawdzić, czy szarpią wszystko po zakończeniu pobierania ... nie ma mowy). Nie mam błędów konsoli, więc zakładam, że IE11 jest całkiem zadowolony ze skompilowanej składni js.
Czy ktoś ma dla mnie wskazówkę do wypróbowania? Czy muszę przepisać instrukcję pobierania w bardziej szczegółowy sposób, aby przeglądarka IE11 mogła ją w pełni zaimplementować? W tym momencie wszystko jest przydatne! Dzięki za wszelkie uwagi.
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
4 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
Myślę, że twój problem polega na tym, że użyje domyślnej wersji węzła (patrz.
Główny wpis w package.json
https://github.com/matthew-and ... %23L6
).
Będąc polifillem, jest po prostu pomijany na urządzeniach innych niż IE, ponieważ przeglądarki domyślnie obsługują pobieranie. IE11 używa wypełnienia, ale jest to wypełnienie węzła i nie będzie działać w przeglądarce.
Możesz wymusić na pakiecie internetowym korzystanie z wersji przeglądarki, dołączając do niej określoną wersję przeglądarki:
lub
lub w konfiguracji webpacka:
Anonimowy użytkownik
Potwierdzenie od:
Wypróbowałem dwie inne opcje, które reklamowały się jako magiczne i polyfilling, ale powyższa kombinacja ostatecznie pozwoliła mi przejść do REST z niezgodności IE w moim kodzie. :)
Anonimowy użytkownik
Potwierdzenie od:
IE 11+
Przed rozpoczęciem
komendy webpack, aby upewnić się, że instalujesz te pliki w node_modules, wykonaj następujące czynności:
instalacje npm - Zapisz izomorficzną obietnicę przynieś EC6-I
następnie umieść to we właściwości wpisu pakietu internetowego:
Teraz wejdź
słowo kluczowe webpack w terminalu/cmd i powinieneś mieć plik znajdujący się w folderze dist (chyba że podasz inną ścieżkę wyjściową) z dostępnym polifillem.
Oto oficjalna strona github fetch.js polyfill
https://github.com/matthew-and ... fetch
Anonimowy użytkownik
Potwierdzenie od:
https://github.com/github/fetch
https://github.com/github/fetch