iは

2016-11-17 9 views
1

The starterKitiは

PhantomJSがスローされdavezuko /反応-Reduxのスターターキットのクラスなどのコンポーネントを宣言するかどうかをテストがエラーをスローします:

未定義「はComponent.contextTypesを評価するオブジェクト(ありません「)

私のコンポーネントは

import React, {Component, PropTypes} from 'react' 
    export default class InputText extends Component { 
    constructor (props, context) { 
     super(props, context) 
     this.state = {} 
    } 
    render() { 
     return (
      <input type="text" /> 
     ) 
    } 
} 
です

どのように私はそのようなコンポーネントをテストすることができますか、またはtest-bundler.jsをどのように変更すればよいですか?

答えて

0

この

import React, {Component, PropTypes} from 'react' 

export default class InputText extends Component<{}, {}> { 
constructor (props, context) { 
    super(props, context) 
    this.state = {} 
} 
render() { 
    return (
     <input type="text" /> 
    ) 
} 
} 
+0

ありがとうございます!しかし、動作しません。 – csacx

0

は、あなたがユニットに直接コンポーネントをテストしていると接続()を使って配線されているコンポーネントを参照していないことを確認してください。

私がテストで私が使用しているコンポーネントコンテナを参照していたことを認識したとき、私は上記のエラーが発生しましたconnect()。一度それをコンポーネント自体に直接指したら、エラーを取り止めました。

0

このエラーは、ファイルの最後にデフォルトとしてエクスポートしていた機能的なステートレスコンポーネントで発生しました。

が動作していません:

const GameBoard = ({ boardLength, xPos, yPos }) => { 
.... 
} 

export default GameBoard 

ワーキング:

export const GameBoard = ({ boardLength, xPos, yPos }) => { 
.... 
}  
export default GameBoard 

だから私は、コンポーネント自体だけでなく、底にexport defaultをエクスポートする必要がありました。