2017-06-29 7 views
-2

Mein Paket json ist so konfiguriert, ES6 Module mit babel zu verwenden:Warum protokolliert dieser Code "undefiniert"?

"scripts": { 
    "start": "nodemon src/index.js --exec babel-node --presets es2015,stage-2", 
    "build": "babel src -d dist", 
    "serve": "node dist/index.js" 
}, 

Dies ist meine Indexdatei:

import test from './test' 
console.log(test) 
console.log(test()) 

Testdatei:

let test =() => console.log('test'); 
export default test; 

Wenn ich den Code ausführen, Ich habe:

[Function: test] 
test 
undefined 

Woher kommt das Undefinierte?

Antwort

2

Sie die Protokollierung der Rückgabewert der Funktion:

console.log(test()) 

Sie zuerst test aufrufen, die 'test' protokolliert. Als nächstes gibt console.log nichts zurück, test gibt nichts zurück, so dass der Rückgabewert undefined ist, was protokolliert wird.

1

Da test() keinen Typ zurückgibt, mit dem Sie versuchen, sich in der Konsole anzumelden. d. h. warum es undefined in der Konsole

angezeigt wird