ссориться с точным владельцем по реакции - PullRequest
0 голосов
/ 06 марта 2020
        import React, { useState } from 'react';
        import 'bootstrap/dist/css/bootstrap.min.css';
        import './App.scss';
        import { Container, Row, Col } from 'react-bootstrap';
        import ShoesCard from './components/ShoesCard';
        import { Confirmation } from './components/Confirmation';
        import shoes from './data';
        import axios from "axios";
        import { Card, Badge, Button, Jumbotron } from 'react-bootstrap'
        export default class Shop extends React.Component {

            state = {
                name: "",
                persons: [],
                owner: ''
            };

            constructor() {
                super();
                this.getList();
            }
            handleChange = event => {
                this.setState({ owner: event.target.value });

            }

            getList = event => {
                console.log("in get list");
                axios.get(`${this.state.owner}`)
                    /* axios.get(")*/
                    .then(res => {
                        console.log(res);
                        this.setState({ persons: [res.data] });
                        console.log("finish set state");
                    });
            };

я пытаюсь получить данные массива с владельцем, которые имеют значение 'denmark', реагируют с ax ios. я уже получаю все данные в массиве, но я хочу получить только те значения, которые имеют метку как владелец. спасибо

1 Ответ

0 голосов
/ 06 марта 2020

Как вы упомянули, вы получаете все данные, но вам нужны только те, у которых есть владелец как Дания . Затем вы можете отфильтровать его, прежде чем установить его в состояние:

console.log(res);
const denmarkData = res.data.filter(obj => obj.owner === this.state.owner); 
//----^^^^^^^^^^^------will be a new Array.
//----and I guessed that obj in "res.data" might have "owner" property.
this.setState({ persons: denmarkData });
...