2016-10-09 5 views
5

Ich wollte überprüfen, um sicherzustellen, dass ich die Importe genug verstehe, um zu wissen, ob es in Ordnung ist import {_.identity} from 'underscore' im Gegensatz zu import _ from 'underscore' zu tun? Das ist die einzige Verwendung von Unterstrichen, wenn die bestimmte Datei.es6 Import von Unterstrich

Vielen Dank für Ihre Hilfe

Antwort

7

Sieht aus wie Sie ganz in der Nähe sind!

Es gibt einige Möglichkeiten, dies zu tun.

IMO der sauberste Weg, um dies so geht zu tun:

import { map, reduce, somethingElse } from 'underscore' 

So dass Sie diese Methoden als so nennen:

map(things, thing => { 
    ... 
}) 

Die '{Karte, reduzieren} = ...' Teil ist es6s Destrukturierungsauftrag. Weitere Informationen finden Sie unter the Mozilla docs page!

wäre eine andere Art und Weise zu tun:

import map from 'underscore/map' 
import reduce from 'underscore/reduce' 

Ich persönlich bin kein großer Fan von dieser, da es ein bisschen sein umständlicher beginnen kann, da mehr Methoden in Mitleidenschaft gezogen werden, aber es ist ein leichter haben Vorteil, können Sie die Referenz nennen, wie Sie möchten:

import mappy from 'underscore/map' 
import reducerify from 'underscore/reduce' 

Obwohl ich nicht würde die Verwendung dieser Namen empfehlen!

+0

Cool, also lasse ich das '_.' einfach weg? – pertrai1

+1

Ich wäre vorsichtig mit der Benennung von Importen aus Unterstrichen/lodash, da Funktionen wie map und reduce bereits eine JS-Implementierung haben, die eine Kollision erzeugt. Es ist normalerweise besser, ihnen etwas wie _map, _reduce oder etwas Eigenartiges zu nennen, wie es @Spen vorgeschlagen hat. – thesublimeobject