2016-08-02 7 views
1

のプロパティ「propTypes」を読み取ることができません:は、酵素の種類のエラーに反応:私のリアクトコンポーネントで、次の未定義

import React from 'react' 

var PageLeftLower = React.createClass({ 
    render:function(){ 
    return(<a href="#">Quote Requests</a>); 
    } 
}); 

module.exports = PageLeftLower; 

ので、非常にシンプルな構成要素を反応します。 私はEnzymeとMochaを使ったテストを始めて、次のコードを書いています。

Component : WholeTab Warning: React.createElement: type should not be null, undefined, boolean, or number. It should be a string (for DOM elements) or a ReactClass (for composite components).

と、次のエラー:すべてのヘルプは高く評価されて

TypeError: Cannot read property 'propTypes' of undefined.

私はそれを実行したとき

import expect from 'expect'; 
import React from 'react'; 
import {shallow} from 'enzyme'; 
import {PageLeftLower} from './PageLeftLower'; 

describe('Component : WholeTab',() => { 
    it('renders without exploding',() => { 
    expect(shallow(<PageLeftLower/>).length).toEqual(1); 
    }); 
}); 

これは、それが次の警告を出力します。

答えて

1

問題はここにある:

import {PageLeftLower} from './PageLeftLower'; 

あなたが直接あなたの部品を輸出しているので:それはこのようなオブジェクトにラップされていない

module.exports = PageLeftLower; 

module.exports = {PageLeftLower: PageLeftLower}; 

ので、あなたのコンポーネントは次のものでアクセス可能です:

import PageLeftLower from './PageLeftLower'; // not {PageLeftLower} 
+0

完璧な人、私は昨日それを理解しましたが、回答ありがとう:) –

+0

良いニュースバディ:) –

関連する問題