Почему данные не могут отображать данные в React JS (ax ios) - PullRequest
0 голосов
/ 19 апреля 2020

Я использую топор ios для создания таблицы данных с использованием MUIDataTable в моем React JS. но с моим кодом результат просто показать пустую таблицу ..

в приведенном ниже коде я не знаю, где я должен измениться, потому что результат - пустая таблица без результата данных, как в JSON. Почему константные данные не могут быть читай, кто-нибудь может помочь?

вот мой код

приложение. js

              import React,{Component} from "react";
              import ReactDOM from "react-dom";
              import MUIDataTable from "mui-datatables";
              import axios from "axios";
              import { Link } from 'react-router-dom';

              class App extends Component {
                // State will apply to the posts object which is set to loading by default
                constructor(props) {
                  super(props);

                this.state = {
                  data: [],
                  isLoading: true,
                  errors: null,
                };
              }

                // Now we're going to make a request for data using axios
                getData = async () => {
                  const option = {
                    url: "url/api",

                    method: 'POST',

                    data: {
                      "data": {
                        "name": "...",
                        "id":"..."
                    },
                    "encrypt": 0
                    }
                  };
                  axios(option)
                    .then(response => {
                      this.setState({
                        data: response.data.data,
                        isLoading: false,
                      });
                      console.log(response.data);
                    })
                    // If we catch any errors connecting, let's update accordingly
                    .catch(error => {
                      console.log(error.response);
                      this.setState({ error, isLoading: false })
                    }
                    );
                }

                // Let's our app know we're ready to render the data
                componentDidMount() {
                  this.getData();
                }


                // Putting that data to use

                render() {
                  const { isLoading, data } = this.state;
                  const columns = ["ID","Name];

                  const options = {
                    filterType: "dropdown",
                    responsive: "scroll",
                    selectableRows:false
                  };


             return (


                    <div>
                    <center><h3>List Data</h3></center><br/>

                      <MUIDataTable
                          columns={columns}
                          options={options}
                          data={data}
                    />

                    {!isLoading ? (
                    data.map(post => {
                      const {id, name} = post;

                      const data = [
                        [
                          {id},
                          {name}
                })
                ) : (
                  <p>Loading...</p>
                )}
                  </div>
                  );

                }
              }

              ReactDOM.render(<App />, document.getElementById("root"));
              export default App

1 Ответ

0 голосов
/ 19 апреля 2020

Ваш вариант неверен. URL должен быть за пределами опции. правильный порядок: ax ios .post ('url', options, headers). Это может быть полезно. Для получения дополнительной информации посетите https://github.com/axios/axios.

...