这里是javascript/react新手。我正试图用api中的数据从引导程序填充表。我制作了两个组件-仪表板。js和CustomTable。js,都是功能性的。就我所知,在仪表板组件上,我需要进行API调用——我已经使用useEffect和axios完成了这项工作。在桌子上。js我需要对列和数据使用useState。我想使我的表成为动态的,包括行和列。看看我的仪表板代码。js。
const Dashboard = (props) => {
let state = [(columns: []), (data: [])];
useEffect(() => {
axios
.get(`https://reqres.in/api/users?page=2`)
.then((res) => {
console.log(res);
setData(res.data);
})
.catch((err) => {
console.log(err);
});
}, [data]);
return (
<div className="dashboard-content">
<Header />
<NewMessage />
<CustomTable data={data} columns={columns} />
</div>
);
};
接下来,我得到了我的定制表。js功能组件,我尝试从我的父组件(Dashboard.js)传递道具,但我仍然无法确定下一步要做什么。
export default function CustomTable(props) {
const [data, setData] = useState(props.data);
const [columns, setColumns] = useState(props.columns);
return (
<div>
<Table striped bordered hover>
<thead>
<tr>
{columns.map((row) => {
return <th>{row.name}</th>;
})}
</tr>
</thead>
<tbody>
{data.map((row) => {
return (
<tr>
<td>{row.id}</td>
<td>{row.email}</td>
<td>{row.first_name}</td>
<td>{row.last_name}</td>
</tr>
);
})}
</tbody>
</Table>
</div>
);
}
如果这一切听起来很愚蠢,我很抱歉,但我真的很想完成这项任务,继续学习。谢谢!
我们把这个换掉
let state = [(columns: []), (data: [])];
与:
const [data, setData] = useState({ cols: null, data: null });
要使您的仪表板
组件看起来像这样:
const Dashboard = (props) => {
const [data, setData] = useState({ cols: null, data: null });
useEffect(() => {
axios
.get(`https://reqres.in/api/users?page=2`)
.then((res) => {
const cols = Object.keys(res.data.data[0]).map((i) => i);
setData({ data: res.data.data, cols });
})
.catch((err) => {
console.log(err);
});
}, []);
return (
<div className="dashboard-content">
{data.data && <CustomTable data={data.data} cols={data.cols} />}
</div>
);
};
您的
CustomTable
元素实际上甚至不需要任何状态变量,因此我们可以使其看起来像这样:
const CustomTable = ({ data, cols }) => {
return (
<div>
<Table striped bordered hover>
<thead>
<tr>
{cols.map((j, i) => (
<th key={i}>{j}</th>
))}
</tr>
</thead>
<tbody>
{data.map((row, i) => {
return (
<tr key={i}>
<td>{row.id}</td>
<td>{row.email}</td>
<td>{row.first_name}</td>
<td>{row.last_name}</td>
<td>{row.avatar}</td>
</tr>
);
})}
</tbody>
</Table>
</div>
);
};
这就是你所需要的。这里有一个沙箱供您使用:https://codesandbox.io/s/compassionate-architecture-s9dl2?file=/src/App.js
我在NetBeans IDE中工作,语言是Java,主要的类是JFrame Form。 我需要从Jtable获取所有数据并用这些数据填充数组。数组代表矩阵。 代码如下 我有一个错误 线程“AWT-EventQueue-0”java.lang.ClassCastException:java.lang.String无法转换为java.lang.Double 所以将表中的元素设置为双精度不是那么容易吗?
series(string $value,[ string $categories]) string $value $config = ['path' => './tests']; $fileObject = new \Vtiful\Kernel\Excel($config); $fileObject = $fileObject->fileName('tutorial.xlsx'); $
factory 辅助函数 必须 使用 factory 方法来做数据填充,因为是框架提倡的,并且可以同时为测试代码服务。 运行效率 开发数据填充时,必须 特别注意 php artisan db:seed 的运行效率,否则随着项目的代码量越来越大,db:seed 的运行时间会变得越来越长,有些项目多达几分钟甚至几十分钟。 原则是: Keep it lighting speed. 只有当 db:seed
问题内容: 我将JTable子类化,并使用DefaultTableModel建模我的表数据。下面的类设置JTable,并向模型添加一行。 在显示/可视化时,将引发以下异常: 我正在扯头发-我还无法找到这个非常简单的用例的根本原因。 问题答案: 我认为您需要在TableModel中添加列。您的代码将UI列添加到表中,但不将其添加到模型中
简介 Laravel 可以用 seed 类轻松地为数据库填充测试数据。所有的 seed 类都存放在 database/seeds 目录下。你可以任意为 seed 类命名,但是更应该遵守类似 UsersTableSeeder 的命名规范。Laravel 默认定义的一个 DatabaseSeeder 类。可以在这个类中使用 call 方法来运行其它的 seed 类从而控制数据填充的顺序。 编写 See
问题内容: 我有一个带有表,组合框的框架,我想通过组合框用数据库中的数据填充表,但是如果我与itemlistener一起使用,我不会看到没有itemlistener的表,然后我会看到包含数据的表(combob = combobox) 问题答案: 您有几个问题: 您使用不正确。您的代码可能可以运行(我不确定),但是它没有利用的功能。 从ResultSet读取数据的代码没有意义,因为您甚至根本没有从R