2017-07-29 24 views
0

私は奇妙なエラーが発生しています。reduxのインポート結果が定義されていません

私はこのようなReduxのをインポートしよう:

import Redux from 'redux' 

と私はそれを

console.log('Redux is', Redux); 

を慰めるしようとすると、それは、Reduxのは未定義である私を与えます。

私はバベルローダーでwebpackを使用していますが、すべての標準設定で何も問題はありません。私も糸をすべてのモジュールを削除し、それらを再追加、まだ同じことを持っています。

module.exports = { 
    devtool: 'inline-source-map', 
    entry: ['./src/index.jsx', 'babel-polyfill'], 
    output: { 
     path: path.resolve('dist'), 
     filename: 'bundle.js', 
     publicPath: '/', 
    }, 
    resolve: { 
    extensions: ['.js', '.jsx'], 
    }, 
    module: { 
     rules: [ 
     { 
      test: /\.jsx?$/, 
      use: { 
      loader: 'babel-loader', 
      }, 
      include: __dirname, 
      exclude: /node_modules/, 
     } 
     ], 
    }, 
    devServer: { 
    historyApiFallback: true, 
    }, 
    plugins: [HtmlWebpackPluginConfig], 
}; 

"と私は糸を使用しています:

import Redux from 'redux'; 
console.log('Redux is ', Redux); 

私のWebPACKの設定は以下のようなものです:今、私のindex.jsは、以下のように単純です。私はindex.htmlを上のスクリプトタグを追加することにより、CDNを使用するように切り替える場合は以下の私のpackage.json

"dependencies": { 
    "redux": "^3.7.2" 
}, 
"devDependencies": { 
    "babel-cli": "^6.24.1", 
    "babel-core": "^6.25.0", 
    "babel-loader": "^7.1.1", 
    "babel-polyfill": "^6.23.0", 
    "babel-preset-es2015": "^6.24.1", 
    "babel-preset-react": "^6.24.1", 
    "babel-preset-stage-2": "^6.24.1", 
    "html-webpack-plugin": "^2.29.0", 
    "path": "^0.12.7", 
    "webpack": "^3.4.1", 
    "webpack-dev-server": "^2.6.1" 
}, 

あり、それが正常に動作します。ギラッドの答えとして

========= EDIT ========

、この方法は

import { createStore } from redux; 
// do stuff with createStore 

の作品しかし、なぜ私はそれを行うことができないことをやってこの方法:

import Redux from 'redux'; 
const { createStore } = Redux; 

後者は私を与える "未定義のプロパティを読み取ることができません 'CREATESTORE'"

========= MORE編集========

だけ再来のソースコードを見ていた私は、それはtypescriptですで書かれており、何の「輸出デフォルト」または「名前空間として輸出」がない、私は

import Redux from 'redux'; 
const { createStore } = Redux; 
を使用することはできません理由は、おそらくです

間違っている場合は私を修正してください。

助けてください。

ありがとうございました

答えて

0

あなたの設定は問題ありません。代わりにimport Redux from 'redux'を使用しての

、およびRedux.createSoreを使用して、たとえば、あなたが使用することができます。import { createStore } from 'redux'をして、直接createStoreを呼び出します。

combineReducersと他の関数redux露光についても同様です。

+0

Giladに感謝します。あなたのソリューションは正常に動作しました。私はちょうど私の質問を更新、なぜ私は上記のように2番目の方法を使用して同じ達成することはできません? – trenunu

+0

reduxにはデフォルトのエクスポートがないので正しい –

関連する問題