2016-07-26 37 views
0

注意無法讀取屬性「陣營」:我做了一個混帳回購協議,以便可以複製的問題 https://github.com/giovannicode/formsy-import-test嘗試導入formy-react時出錯。未定義

我試圖使用formsy反應的庫的反應JS項目。

但我無法導入文件。我是webpack和ES6的新手,所以我不確定是否缺少重要的東西。 這裏是我的.babelrc文件:

{ 
"presets": [ 
"es2015", "react" 
] 
} 

這裏是我的webpack.config.js文件:

var path = require("path"); 

module.exports = { 
    resolve: { 
    extensions: ['', '.js', '.jsx'], 
    }, 
    //externals: 'react', 
    entry: { 
    'app': './app.jsx', 
    }, 
    output: { 
    path: __dirname, 
    filename: "[name].js" 
    }, 
    module: { 
    loaders: [ 
     { 
     test: /\.jsx$/, 
     include: __dirname, 
     loader: "babel-loader" 
     }, 
    ] 
    } 
} 

這裏是我的app.jsx文件:

import React from 'react'; 
import ReactDOM from 'react-dom'; 

import {Formsy} from 'formsy-react'; 

var CommentBox = React.createClass({ 
    render: function() { 
    return (
     <div className="commentBox"> 
     Hello, world! I am a CommentBox. 
     </div> 
    ); 
    } 
}); 

ReactDOM.render(
    <CommentBox />, 
    document.getElementById('react-content') 
); 

如果我註釋掉形式反應導入,應用程序將正常工作。 但當我添加導入我得到在瀏覽器的如下錯誤:

Uncaught TypeError: Cannot read property 'React' of undefined 

該應用程序將不會出現錯誤編譯通過的WebPack雖然如此林不知道發生了什麼事情。

注意:我做了一個混帳回購協議,以便可以複製的問題 https://github.com/giovannicode/formsy-import-test

回答

0

您正嘗試導入依賴於兩個方面,從ES6

模塊導入和

import Formsy from 'forms-react'

並加載需要的模塊

var React = require('react');

看你的代碼,你可能想使用ES6語法

import React from 'react' 
import Formsy from 'forms-react' 
+0

嘿亞歷杭感謝您的答覆。我嘗試了你的建議,但我仍然遇到同樣的錯誤。我也嘗試過使用var x = require(''x')'語法,但是我仍然得到了同樣的錯誤 –

+0

好吧,首先我想你已經通過NPM安裝了React依賴關係,對於使用webpack你需要一個入口點,一個通常被稱爲「index.js」的文件 因此,在你的'entry {object}對象中,你應該引用index.js(入口點),例如: 'entry:{ './app/index。 JS' }' 你可以有多個入口點,但要確保你有數組語法 '進入:[‘文件’,‘anotherFile’]'爲網絡包 //項文件 '進口陣營從'反應' 導入ReactDOM from'react-dom' 從'./config/routes'導入路由 ReactDOM.render( routes, document。getElementById('app') )' – Alejandro

+0

如果您正在學習它的真棒,您還可以創建反應應用程序,無需任何配置 https://facebook.github.io/react/blog/2016/07/22/create- apps-with-no-configuration.html – Alejandro

相關問題