私は、酵素の浅いラッパーを使用して、私の成分のインスタンスを取得し、その上にクラス機能を呼び出そうとしています。 はTypeError:それは私に、このエラーが表示されます。tree.instance(...)をonCampaignSelected機能害虫/酵素による反応成分の試験
class ToolbarPage extends Component {
constructor(){
super();
this.onCampaignSelected = this.onCampaignSelected.bind(this);
this.state = {
item: null
}
}
onCampaignSelected (item) {
this.setState({item})
}
render() {
return (
<MyComponent onItemSelected={this.onCampaignSelected} />
)
}
}
function mapStateToProps(state){
buttons: state.toolbar.buttons
}
export default connect(mapStateToProps)(ToolbarPage);
ではない私のテストケースは、私も考え出しこの
import { shallow, mount } from 'enzyme';
import ToolbarPage from './ToolbarPage';
import configureStore from 'configureStore';
const store = configureStore();
const props = {
store,
isLoggedIn: false,
messageCounter: 0
}
describe('<ToolbarPage />',() => {
it('allows to select campaign',() => {
const tree = shallow(<ToolbarPage {...props}/>);
tree.instance().onCampaignSelected();
})
})
のように見えますラップされたコンポーネントであるため、ラップされたコンポーネントに対してこの関数を取得しません。どのように私はこの機能にアクセスするのですか?
コードが正常であるようです。 'tree.debug()'は何を返しますか?また、 'props'が' undefined'というエラーを出さないのですか?提供されたコードサンプルで何かを見逃していませんか? –