0

我正在学习反应并试图使代码工作,即使用反应表和功能组件。示例代码根据输入的搜索关键字获取 git-hub 存储库列表,并使用 react-table 显示该列表

有两个问题

  1. 下面的编译失败,错误是找不到文件 import 'react-table/react-table.css';

  2. 如果我注释上面的行并运行 npm start,它会失败并出现以下错误

错误:元素类型无效:应为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。

检查App.

import React, { useState } from 'react';
import './App.css';
import ReactTable from "react-table";
import 'react-table/react-table.css';

function App() {
  const [data, setData] = useState([]);
  const [keyword, setKeyword] = useState('');

  const columns = [{
    Header: 'Name',
    accessor: 'full_name'
  }, {
    Header: 'URL',
    accessor: 'html_url'
  }, {
    Header: 'Owner',
    accessor: 'owner.login'
  }]

  const fetchData = () => {
    console.log(keyword);
    const url = `https://api.github.com/search/repositories?q=${keyword}`;
    fetch(url)
    .then(response => response.json())
    .then(responseData => {
      setData(responseData.items);
    })
  }

  const handleChange = (e) => {
    setKeyword(e.target.value);
  }


  return (
    <div className="App">
      <input type="text" onChange={handleChange} />
      <button onClick={fetchData} value={keyword} > fetch</button>
      <ReactTable data={data} columns={columns} />

    </div>
  );
}

export default App;
4

1 回答 1

0

问题是因为我使用 React-table v7 和 react-table v6 中的代码

于 2020-11-21T12:41:18.960 回答