小编Nos*_*ool的帖子

如何使用 Redux 和酶测试 React Router 参数

这已经解决了

我有一个用connect()and包裹的组件withRouter。为了呈现自身,它使用this.props.match.params. 在我的测试酶,在match我传递给道具WrappedComponent似乎并不当我登录的传播props。但是,如果我添加额外的道具(在不同的键下match),它们会很好地传播。

以下测试复制了我的问题。我对 React 还很陌生,所以如果有人对我做错了什么以及我可以做些什么来调试这个有提示,我们将不胜感激。

import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { mount } from 'enzyme';
import configureStore from 'redux-mock-store';
import { MemoryRouter, withRouter } from 'react-router-dom';
import { Provider, connect } from 'react-redux';


class TestComponent extends Component {
  constructor(props) {
    super(props);
    console.log(props);
  }

  render() {
    const { params } = this.props.match;
    return (
      <div>
        { params.var1 }
      </div> …
Run Code Online (Sandbox Code Playgroud)

reactjs react-router redux enzyme react-redux

6
推荐指数
1
解决办法
5024
查看次数

标签 统计

enzyme ×1

react-redux ×1

react-router ×1

reactjs ×1

redux ×1