2017-06-05 15 views
0

リアクションに新たに加わったことは、一見したところではかなり単純なはずです。何が間違っているのか分かりません。リアクション不変違反例外

私はこのようなBasicReactComponent.jsコンポーネントがあります:私は以下のエラーに

を得続ける

import React from 'react'; 
import ReactDOM from 'react-dom'; 
const BasicReactComp = require('./BasicReactComp'); 

ReactDOM.render(
<BasicReactComp />, 
document.getElementById('foo') 
); 

import React from 'react'; 

const BasicReactComp =() => { 
    console.log('hi'); 
    return (
    <div> 
     I was loaded from basic react comp. 
    </div> 
); 
}; 

export default BasicReactComp; 

アム以下のように私のメインのファイルでそれを呼び出そうとします

**Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. 
    Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.** 
+0

'/ BasicReactComp'' –

答えて

2

ES6モジュールとCommo nJSモジュールの場合、デフォルトのエクスポートはdefaultのプロパティとしてエクスポートされます。したがって、あなたがあなたrequire値の.defaultにアクセスする必要があります。

const BasicReactComp = require('./BasicReactComp').default; 

それともimportの構文を使用します。

import BasicReactComp from './BasicReactComp'; 
+0

#FacePalm「からインポートBasicReactCompを使用し....感謝あなたはそんなに...固定されています:) – prgrmr

+0

@ felix-king、このようなことができるかどうか知りませんか?$( '#foo')。append(ReactDOM.render( 、 document.createElement( 'div') ));何らかの理由でそれは働いていない...事は、私は、別の要素に追加されているdiv内のコンポーネントをレンダリングしたいと考えている – prgrmr

+0

それは考えた:) – prgrmr

関連する問題