Jest和Enzyme使用ES6 Arrow功能测试React Component

时间:2017-06-27 15:49:40

标签: reactjs jestjs enzyme

我已将Jest和Enzyme添加到运行webpack 2的React项目中。 在运行jest时,我在React Component中使用ES6箭头函数时遇到了错误。

组件代码示例如下:

import React, { Component } from 'react';

class Add extends Component {
    constructor(props){
        super(props);
        this.state = this.defaultState();
    }

    defaultState = () => {
        return {
            name : ""
        }
    }
    onChange = (e) =>{
        this.setState({
            name: e.target.value
        });
    }
    handleAdd = (e) => {
        e.preventDefault();
        this.props.onAdd(this.state.name);
    }

    render= () => {
        return (
            <form>
        <!-- more markup -->
            </form>
        );
    }


}

export default Add;

Jest在运行测试套件时失败了,我是否需要在我的软件包json / babelrc中添加任何内容以启用箭头功能测试?

1 个答案:

答案 0 :(得分:6)

确保你安装了babel-jest,然后在你的bablerc中你应该有es2015,stage-0,并在预设中做出反应