で中括弧の使用である私は二番目のブラケットを持ってES6のインポート文
import React from 'react'
import { render } from 'react-dom'
をインポートするには、2つの異なる方法があります見ることができます。だから両者の違いは何ですか?大括弧をいつ追加する必要がありますか?おかげで
で中括弧の使用である私は二番目のブラケットを持ってES6のインポート文
import React from 'react'
import { render } from 'react-dom'
をインポートするには、2つの異なる方法があります見ることができます。だから両者の違いは何ですか?大括弧をいつ追加する必要がありますか?おかげで
あなたがあなたのコンポーネントをインポートする必要があるかどうかの違いは、あなたがexport
あなたにそれがある方法の中にあるwithin brackets or without it
です。
輸出の2種類
は、コンポーネントがコンポーネントがデフォルトのエクスポートであるならば、あなたがする必要があるone default export and zero or more named
輸出
を持つことができますがあります角かっこなしでインポートしてください 例
export default App;
import App from './path/to/App';
として輸入してという名前のエクスポートは、あなたが
としてそれをインポートすることができexport const A = 25;
または
export {MyComponent};
ザ・ようなものでした
import {A} from './path/to/A';
または
import {A as SomeName} from './path/to/A';
コンポーネントが1つのデフォルトのエクスポートといくつかの名前のエクスポートを持っている場合react
とreact-dom
の場合は同様に
import App, {A as SomeName} from './path/to/file';
をインポートするとき、あなたも一緒にそれらを混在させることができ、React
とReactDOM
はそれぞれdefault exports
であり、例えばComponent
はnamed export
であり、react
およびrender
は、react-dom
の名前付きエクスポートです。あなたは
import ReactDOM from 'react-dom';
を行い、その後、
ReactDOM.render()
か、あなたの質問で述べたようにそれを使用するを使用することができますいずれかの理由のthats。
この回答は非常に確定的です... * * 1つの**デフォルトのエクスポート**と**複数の名前付きエクスポート(スクリプトファイルごとに許可)...そして、デフォルトのエクスポートをインポートする:中括弧なし、importという名前のインポート:中括弧を使用する必要があります。公式の参考文献の1つhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export? (ES6標準の一部) –
デフォルトとしてエクスポートする場合は、括弧を追加する必要はありません。モジュール内でデフォルトのみを持つことができます。
CASE1:
エクスポートデフォルト機能(NUM1、NUM2){ 戻りNUM1 + NUM2。 }
ケース2:
関数の和(NUM1、NUM2){ 戻りNUM1 + NUM2。 }
export {sum as default};
CASE3:
関数の和(NUM1、NUM2){ 戻りNUM1 + NUM2。 }
エクスポートデフォルトの合計。
あなたは "./test.js" からデフォルト
輸入和をインポートすることができます。
console.log(sum(1、2));
は
export default (a, b) => a + b;
export const sub = (a, b) => a - b;
export const sqr = a => a**2;
それは次のようにインポートすることができ、この場合、
import sum, { sub, sqr } from './primitives';
は、sum
は、 "デフォルトのエクスポート" と呼ばれ、モジュールは「単一を含むことができ、考えてみましょうデフォルトのエクスポート "のみです。
sub
およびsqr
は「名前付きエクスポート」と呼ばれ、モジュールには複数の名前付きエクスポートが含まれることがあります。
推奨読書http://www.2ality.com/2014/09/es6-modules-final.htmlこれについてはお尋ねする必要はありません。 –
簡単な答え:これは演劇に出てくるes6の破壊です。 '' react''からエクスポートされたすべてのものに '' var react'が割り当てられ、 '' react-dom'''からエクスポートされるものの '' render''プロパティに 'var render'が割り当てられます – therobinkim
[ ES6のインポートに中括弧を使用しますか?](http://stackoverflow.com/questions/36795819/when-should-i-use-curly-braces-for-es6-import) – jpdelatorre