react-router – component.find(‘a).prop(‘href’)返回undefined而不是href值

前端之家收集整理的这篇文章主要介绍了react-router – component.find(‘a).prop(‘href’)返回undefined而不是href值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个使用Link,IndexLink来渲染导航栏的导航组件:
class Navigation extends Component {

  renderLinks = (linksData) => {
    return linksData.map((link) => {
      if(link.to === '/') {
        return (
          <li key={link.text}>
            <IndexLink to={link.to}>
              <i>{link.icon}</i>
              <span>{link.text}</span>
            </IndexLink>
          </li>
        );
      } else {
        return (
          <li key={link.text}>
            <Link to={link.to}>
              <i>{link.icon}</i>
              <span>{link.text}</span>
            </Link>
          </li>
        );
      }
    });
  };

  render() {
    const {links} = this.props;
    return(
      <div>
        <ul>
          {this.renderLinks(links)}
        </ul>
      </div>
    )
  }
}

Navigation.propTypes = {
  links: React.PropTypes.array.isrequired
}

export default Navigation;

现在我想测试我的链接是否正确呈现:

import React from 'react';
import {Link,IndexLink} from 'react-router';
import {mount} from 'enzyme';
import Navigation from '../components/core/Navigation.component';

describe('<Navigation/>',() => {
  it('should render Navigation links',() => {
    const links = [
      {
        to: '/',icon: 'hourglass_empty',text: 'Timer'
      }
    ];
    const navigation = mount(<Navigation links={links}/>);
    console.log(navigation.find('a').prop('href'));
  });
});

但这只是注销未定义.我怎么能测试正确的href值是否传递给我的锚点?

试试这个: wrapper.find(富).在(0).props().HREF

猜你在找的React相关文章