2015-06-27 50 views
35

在BabelJS 5.6.4版本中,我似乎無法「導入... as」。下面是我所試圖做的例子:爲什麼我不能使用「import ... as」導入默認導出與BabelJS

在文件 'test.js':

export default class Test {}; 

在文件 'test2.js'(在同一目錄下):

import Test as Test2 from './test'; 

我也試圖做的事:

import {Test as Test2} from './test'; 

即使它一無所知這裏說: http://babeljs.io/docs/learn-es2015/#modules

而且只用括號中的非默認的語法在這裏: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import

有沒有人成功地做到了這一點?

編輯:這完全是因爲default關鍵字。因此,在這種情況下,問題就變成了:是否有人有任何指向文檔的鏈接,指出我不應該使用默認導入? ECMA或Babel。

回答

89

您可以通過導入或者

import Test2 from './test'; 

import {default as Test2} from './test'; 

默認出口的默認出口沒有Test爲你需要的別名的名稱 - 你只需要導入您想要的名稱下的默認值。

迄今爲止發現的最佳文檔是Axel Rauschmayers博客中的文章ECMAScript 6 modules: the final syntax

+0

啊默認...讓我試試。 – BTC

+0

非常好用!謝謝。博士Rauschmayers博士,順便說一句,我認爲足夠可靠的來源是規範。 – BTC

+0

那麼你可以查看[規範](http://www.ecma-international.org/ecma-262/6.0/#sec-modules),但我認爲博客更具可讀性:-) – Bergi