Plik: SafeString.js
// Build out our basic SafeString type
function SafeString(string) {
this.string = string;
}
SafeString.prototype.toString = function() {
return "" + this.string;
};
export default SafeString;
Nigdy wcześniej nie widziałem export default
. Czy są jakieś równoważne rzeczy, export default
które mogą być łatwiejsze do zrozumienia?
javascript
node.js
ecmascript-6
damphat
źródło
źródło
export
szczegóły słowa kluczowego tutaj . Obecnie jest nie obsługiwane natywnie przez któregokolwiek z przeglądarek internetowych.Odpowiedzi:
Jest to część opisanego tutaj systemu modułów ES6 . W tej dokumentacji znajduje się pomocny przykład, również:
Aktualizacja: od czerwca 2015 r. System modułów jest zdefiniowany w § 15.2, a
export
w szczególności składnia jest zdefiniowana w § 15.2.3 specyfikacji ECMAScript 2015.źródło
export const Foo = () => {}
a potem na końcu plikuexport default Foo
widzę to w wielu przykładach reakcji. Co jest z tymi dwoma eksportami?import foo, { bar, baz } from './foo';
import foo from "foo"
? Czy istniał obiekt zawierający foo, ponieważ w pierwszym przykładzie wyeksportowana funkcja nie jest nazwana. @pswgexport default
służy do eksportowania pojedynczej klasy, funkcji lub operacji podstawowej z pliku skryptu.Eksport można również zapisać jako
Służy do importowania tej funkcji do innego pliku skryptu
Powiedz w app.js , możesz
Trochę o eksporcie
Jak sama nazwa wskazuje, służy do eksportowania funkcji, obiektów, klas lub wyrażeń z plików skryptów lub modułów
Utiliites.js
Można to zaimportować i wykorzystać jako
App.js
Lub
Gdy używany jest domyślny eksport, jest to o wiele prostsze. Pliki skryptów eksportują tylko jedną rzecz. cube.js
i używany jako App.js
źródło
export default function(){}
można użyć, gdy funkcja nie ma nazwy. Plik może zawierać tylko jeden domyślny eksport. Alternatywą jest nazwany eksport.Ta strona opisuje
export default
szczegółowo, a także inne szczegóły dotyczące modułów, które uważam za bardzo pomocne.źródło
default
znaczy i dla mnie pytanie dotyczyło tego słowa.default
oznacza, że domyślny eksport można importować bez użycia nawiasów klamrowych. Ta odpowiedź jest dość błędna, ponieważ mówi, że możesz jej użyć tylkodefault
wtedy, gdy w pliku jest tylko jeden eksport, co wcale nie jest prawdą. Możesz mieć kilka eksportów w tym samym pliku, ale oczywiście tylko jeden z nich można ustawić jakodefault
jeden.Piszę ten post, ponieważ (zakładam, że jestem zmęczony) nie do końca zrozumiałem, ani MDN, ani opis innych osób, a najlepszym sposobem na zrozumienie czegoś jest nauczenie tego innych ludzi. Po prostu nie widzę prostej odpowiedzi na pytanie.
Zilustruję tę linię prostym przykładem.
Powiedzmy, że mamy 3 moduły i index.html:
modul.js
modul2.js
modul3.js
index.html
Dane wyjściowe to:
Więc dłuższe wyjaśnienie jest :
Opcja „eksportuj domyślnie” jest używana, jeśli chcesz wyeksportować jedną rzecz dla modułu.
Ważną rzeczą jest więc „import blabla” z„ ./modul3.js ”” - moglibyśmy zamiast tego powiedzieć:
„import pamelanderson from './modul3.js”, a następnie pamelanderson (); Będzie to działało dobrze, gdy użyjemy opcji „eksportuj domyślnie” i zasadniczo to jest to - pozwala nam nazwać to, co chcemy, gdy jest domyślne .
Ps Jeśli chcesz przetestować przykład - najpierw utwórz pliki, a następnie zezwól na CORS w przeglądarce -> jeśli używasz typu firefox w adresie URL przeglądarki: about: config -> Wyszukaj „privacy.file_unique_origin” -> zmień to „false” -> otwórz index.html -> naciśnij F12, aby otworzyć konsolę i zobaczyć wyjście -> Ciesz się i nie zapomnij przywrócić ustawień domyślnych corsa.
Ps2 Przepraszamy za głupie nazewnictwo zmiennych
Więcej informacji @ link2medium , link2mdn1 , link2mdn2
źródło
Jak wyjaśniono na tej stronie MDN
Na przykład:
źródło
W moim przekonaniu ważne jest, aby domyślny eksport mógł być importowany pod dowolną nazwą!
jeśli istnieje plik foo.js, który eksportuje domyślnie:
można go zaimportować do bar.js przy użyciu:
źródło
Nazwany eksport
Domyślny eksport
// możesz użyć innej nazwy dla domyślnego importu
źródło
opcja eksportu domyślna służy do eksportowania pojedynczej klasy, funkcji lub operacji podstawowej.
eksportuj funkcję domyślną () {} można użyć, gdy funkcja nie ma nazwy. Plik może zawierać tylko jeden domyślny eksport.
Czytaj więcej
źródło