2017-10-05 14 views
0

私は最近、このコード行を見てきました。モジュールの理解にはJavaScriptの構文が必要です

const { Bar, Data: { Selectors } } = require('some-module'); 

誰かがData: { Selectors }は、コードのこの作品で何をするのかを教えていただけますか?自分のコードベースにモジュールをいくつかインポートしていることを理解しています。ちょうど{Selectors}部分について混乱しています。

また、import構文を使用して書きたい場合は、同じものに相当するコードは何でしょうか?

例えば:import Bar from "some-module"

+0

を言うと同じです。 – Bergi

+0

相当な 'import'構文は、' some-module'のES6バージョンが使用する 'export'構文に大きく依存します。 – Bergi

答えて

2

それは実際のモジュールで行う必要はありません(構文は、インポートのために同じであるかが必要です。import {Bar} from "some-module")、それは二つの変数、BarSelectorを作成するだけでdestructuring assignmentです。

ここでは、他の多くのES6と一緒に別の例ですがhttp://es6-features.org/#ObjectMatchingDeepMatching

const obj = {Bar: 1, Data: { Selectors: [1,2]}}; 
 
    const { Bar, Data: { Selectors } } = obj; 
 
    // This is another ES6 feature, same as saying 
 
    // console.log({Bar: Bar}) 
 
    console.log({Bar}); 
 
    console.log({Selectors});

ています上記のそれはちょうど、ネストされた非構造だ

const Bar = obj.Bar; 
const Selectors = obj.Data.Selectors 
関連する問題