2016-07-29 11 views
25

以下の2つのrequireステートメントの違いを理解しようとしています。ノードの中か括弧requireステートメント

具体的には、{ }の目的は、ipcMainにラップされていますか?

const electron = require('electron') 

const {ipcMain} = require('electron') 

これらは両方とも電子モジュールの内容を割り当てているように見えますが、明らかに機能が異なります。

誰でも光を当てることはできますか?

答えて

35

2番目の例では、構造解除を使用しています。

これは、必要なモジュールからエクスポートされた特定の変数(関数を含む)を呼び出します。例えば

(functions.js):

module.exports = { 
    func1, 
    func2 
} 

があなたのファイルに含まれている:

const { func1, func2 } = require('./functions') 

とは対照的に、今、あなたは、個別

func1() 
func2() 

それらを呼び出すことができます。

const Functions = require('./functions') 

は、ドット表記を使用して呼び出されます。

Functions.func1() 
Functions.func2() 

ホープ、このことができます。

hereについては解読できますが、これはES6の非常に便利な部分であり、オブジェクトと同様に配列でも使用できます。

+1

偉大な説明、ありがとうございます。 – Shaffanhoon

+1

私は、ちょうどあなたにさらなる読書へのリンクを提供するように依頼していましたが、あなたはそれに私を打ち負かしました! – Shaffanhoon

+1

問題ないです。喜んで助けてください。 – alexi2