Невозможно установить свойство 'x' из неопределенного - PullRequest
2 голосов
/ 12 октября 2019

Я хочу установить переменную в магазине. Вот мой магазин

class storeCategory{

    @observable categories =[];

    @action getCategories = () =>{
        fetch('http://localhost:3000/categories')
        .then((resp) => resp.json())
        .then(function(resp2){
            this.categories=resp2;
        });
    }


}

вот мой компонент

@inject('sCategory')
@observer
class Category extends React.Component{

    componentDidMount=()=>{
       this.props.sCategory.getCategories();
    }

    render(){
        const {sCategory} = this.props;
        return (
            <ListGroup>
                {this.props.sCategory.categories.map((cat, index) => {
                            return (
                                <ListGroupItem key={cat.id}>{cat.categoryName}</ListGroupItem>
                            )
                        })}
            </ListGroup>
          );
    }
}

Я добавляю в sКатегорию к провайдеру в index.js

Я получаюэта ошибка в this.categories = resp2 в методе выборки;

Невозможно установить свойство 'category' из неопределенного

1 Ответ

0 голосов
/ 12 октября 2019

Вместо этого используйте функцию стрелки:

@action getCategories = () =>{
    fetch('http://localhost:3000/categories')
    .then((resp) => resp.json())
    .then((resp2) => {
        this.categories=resp2;
    });
}`

Ключевое слово функции связывает ключевое слово «this» с самим собой, но функция стрелки сохраняет его привязанным к контексту

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...