javascript-React Native setState不是函数

有人可以解释一下为什么this.setState不是函数吗?

我看不到为什么我的代码有错误

import React from 'react';
import axios from 'axios'
import { StyleSheet, Text, View , Image} from 'react-native';

export default class App extends React.Component {

    constructor(){
        super();
        this.state = {res: []}
    }
    componentDidMount() {
        axios.get('https://api.github.com/repos/torvalds/linux/commits')
            .then(function (response) {
                this.setState({res: response});
            }).catch(function (error) {
                console.log(error);
            });
    }
 }

谢谢

解决方法:

这是lexical scope问题.使用arrow function.

.then((response) => {
    this.setState({ res: response });
})
上一篇:javascript – 我可以在setState完成更新后执行一个函数吗?


下一篇:你真的了解setState()吗?