小编use*_*138的帖子

react js - 如何进行服务层调用

我试图将下面的axios功能隔离到一个单独的服务层。请建议如何在 react js 中做到这一点?

class xxx extends Component {
constructor(props) {
    super(props)
    this.state = {
        ownerName: '',
    }
    this.handleKeyUp = this.handleKeyUp.bind(this)
}

handleKeyUp(e) {
    if (e.target.value.length > 4) {
        var self = this
        axios.get(`/https://exampleService.com/${e.target.value}`)
            .then(function (response) {
                self.setState({ownerName: response.data['name']})
            })
            .catch(function (error) {
                if (error.response) {
                    if (error.response.status === 404) {
                        self.setState({ownerName: `\u2014`})
                    }
                }
            })
    }
}

render () {
    return (
        <div>
            <Input OnKeyUp={(event) => this.handleKeyUp(event)} ></Input>
        </div>
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图像下面一样使用 分离module.exports,但我无法从模块组件中获取输出并将其传递给 xxx …

reactjs

4
推荐指数
2
解决办法
2万
查看次数

标签 统计

reactjs ×1