2016-08-25 25 views
0

のインポートの重複宣言:ES6 - 事前ES6でファイル

var stream = require("./models/stream"); 
var stream = require("./routes/stream"); 

それは正常に動作します。 ES6で

import stream from './models/stream'; 
import stream from './routes/stream'; 

エラー:

TypeError: /var/www/.../es6/app.js: Duplicate declaration "stream" 
> 31 | import stream from './routes/stream'; 

私はそれを正しくインポートすることができますどのように任意のアイデア?

+0

あなたはなぜ必要/インポートう最初に2回「蒸気」にする? –

+1

これは正当な質問です。なぜそれはコメントなしで投票されたのですか? – Yar

+0

@FelixKlingそれらは2つの異なるファイルです。 pre-es6では 'var stream = require(" ./ models/stream ");' require( "./ models/stream"); ' - そうですね! – laukok

答えて

2

あなたはstream変数を再宣言すると、あなただけの割り当てなしで最初のファイルをインポートすることができますので、それを使用することはありません:

import './models/stream'; 
import stream from './routes/stream'; 
+0

チップのおかげで! – laukok

+0

このエラーがあります。 '予期しないトークン(26:12)> 27 | './models/stream'からインポートします。 ' – laukok

+1

これはちょうど:import './models/stream'; –

3

使用異なるモジュール名

import stream from './models/stream'; 
import streamroutes from './routes/stream'; 
+1

更新しました。あなたの2番目のものは 'import {default as streamroutes} from'か' import streamroutes from'です。 – loganfsmyth

+0

@loganfsmythありがとう。私は答えを編集しました。 –