从表中获取特定 ID 客户 react-bootstrap-table2-toolkit
get spesific ID customer from tables react-bootstrap-table2-toolkit
我尝试从 table 获取客户 ID,然后我想将该 ID 用于请求我的 API。
但是我得到了 Stack,我对将客户 ID 传递给我的逻辑方法感到困惑 updateCustomer(customerId) 和 deleteCustomer(customerId)
我的依赖版本:
"react": "^16.5.2",
"react-bootstrap-table": "4.1.5",
"react-bootstrap-table-next": "^3.0.0",
"react-bootstrap-table2-paginator": "^2.0.3",
"react-bootstrap-table2-toolkit": "^1.3.1",
这是我在 ToolkitProvider 中的 列 :
{
dataField: 'action',
text: 'Action',
formatter: (cell, row, rowIndex, formatExtraData) => {
console.log(row);
const customerId = row._id;
return (
<div >
<span className="mr-1">
<a onClick={this.updateCustomer(customerId)} className="text-warning">update</a>
</span>
<span className="ml-1">
<a onClick={this.deleteCustomer(customerId)} className="text-danger">delete</a>
</span>
</div>
)
},
}
我的逻辑方法只是为了测试用户id是否被接受:
updateCustomer = (id) => {
return alert('ok your id: '+id)
}
deleteCustomer = (id) =>{
return alert('ok your id: '+id)
我的 Actions Tables 看起来像:
但是当我点击它时,我只会重复 提醒 与 table 中的客户数据一样多。
如何在我提供的方法中得到正确的ID?
我是斯塔克。
我希望你能帮助我,
谢谢:)
终于可以自己解决这个问题了。
我只是将 onClick={this.updateCustomer(customerId)}
更改为 onClick={() => this.updateCustomer(customerId)}
也许这意味着:"just run the function after the action"
{
dataField: 'action',
text: 'Action',
formatter: (cell, row, rowIndex, formatExtraData) => {
console.log(row);
const customerId = row._id;
return (
<div >
<span className="mr-1">
<a onClick={() => this.updateCustomer(customerId)} className="text-warning">update</a>
</span>
<span className="ml-1">
<a onClick={() => this.deleteCustomer(customerId)} className="text-danger">delete</a>
</span>
</div>
)
},
}
我再也没有收到重复的提醒:)
我尝试从 table 获取客户 ID,然后我想将该 ID 用于请求我的 API。
但是我得到了 Stack,我对将客户 ID 传递给我的逻辑方法感到困惑 updateCustomer(customerId) 和 deleteCustomer(customerId)
我的依赖版本:
"react": "^16.5.2",
"react-bootstrap-table": "4.1.5",
"react-bootstrap-table-next": "^3.0.0",
"react-bootstrap-table2-paginator": "^2.0.3",
"react-bootstrap-table2-toolkit": "^1.3.1",
这是我在 ToolkitProvider 中的 列 :
{
dataField: 'action',
text: 'Action',
formatter: (cell, row, rowIndex, formatExtraData) => {
console.log(row);
const customerId = row._id;
return (
<div >
<span className="mr-1">
<a onClick={this.updateCustomer(customerId)} className="text-warning">update</a>
</span>
<span className="ml-1">
<a onClick={this.deleteCustomer(customerId)} className="text-danger">delete</a>
</span>
</div>
)
},
}
我的逻辑方法只是为了测试用户id是否被接受:
updateCustomer = (id) => {
return alert('ok your id: '+id)
}
deleteCustomer = (id) =>{
return alert('ok your id: '+id)
我的 Actions Tables 看起来像:
但是当我点击它时,我只会重复 提醒 与 table 中的客户数据一样多。
如何在我提供的方法中得到正确的ID? 我是斯塔克。
我希望你能帮助我, 谢谢:)
终于可以自己解决这个问题了。
我只是将 onClick={this.updateCustomer(customerId)}
更改为 onClick={() => this.updateCustomer(customerId)}
也许这意味着:"just run the function after the action"
{
dataField: 'action',
text: 'Action',
formatter: (cell, row, rowIndex, formatExtraData) => {
console.log(row);
const customerId = row._id;
return (
<div >
<span className="mr-1">
<a onClick={() => this.updateCustomer(customerId)} className="text-warning">update</a>
</span>
<span className="ml-1">
<a onClick={() => this.deleteCustomer(customerId)} className="text-danger">delete</a>
</span>
</div>
)
},
}
我再也没有收到重复的提醒:)