2017-02-20 8 views
6

Ich bin über aktuelle Komponentenerstellung mit "Doppel" -Export gestoßen. Kannst du mir bitte erklären, ob es wirklich benutzt wird, oder nur von den Autoren bevorzugt wird?React: Export const + Export Standard vs Export Standard

import React from 'react' 
import DuckImage from '../assets/Duck.jpg' 
import './HomeView.scss' 

export const HomeView =() => (
    <div> 
    <h4>Welcome!</h4> 
    <img 
     alt='This is a duck, because Redux!' 
     className='duck' 
     src={DuckImage} /> 
    </div> 
) 

export default HomeView 

S.S: Der aktuelle Code wird später von webpack2 gebündelt.

+0

Sie exportieren es als reguläres const und als Standard const, so dass Sie es entweder mit importieren HomeView von "file" importieren können oder importieren Sie HomeView von file. – Li357

+1

Export-Standard erlaubt Zeug wie 'Import Reagieren von 'reagieren'. Export ohne Standard erfordert '{}' z.B. 'import {React} von 'react''. Sie können nur 1 Standard pro Datei haben –

Antwort

11

In diesem Fall exportieren die beiden Exporte das gleiche. Beide

import Homeview 

Und

import { Homeview } 

geben Sie das gleiche Modul (die Homeview-Komponente).

Ich sehe, dass Sie Redux verwenden, obwohl. Wenn Sie so etwas wie

export const HomeView ... 

export default connect(mapStateToProps)(HomeView); 

taten, konnten die in diesem nützlich sein, Sie die nicht-Redux-verbundene Komponente manchmal verwenden möchten, oder Sie können es für die Prüfung benötigen.

+0

Das letzte Bit ist ein guter Punkt. Nicht nur Redux, sondern auch, wenn Sie einer Property die PropTypes von React hinzufügen wollen. – CodingIntrigue