<Test>
{({
direction,
filteredItems,
onItemSelectAll,
onItemSelect,
selectedKeys: listSelectedKeys,
disabled: listDisabled,
}) => {
const columns = direction === 'left' ? leftColumns : rightColumns;
.......
就我而言,我使用打字稿,因此当我尝试运行代码时,对于此部分代码,将显示错误:Binding element 'direction' implicitly has an 'any' type
所以,现在我想现在如何应用打字稿,因为我尝试写direction:any
但我得到了'any' is declared but its value is never read.
在这种情况下如何应用打字稿?我的意思是direction
至disabled
之间的代码段?
您是否正在破坏函数的参数?如果是,我认为在TypeScript中执行此操作的方式如下:
interface Args {
direction: any
selectedKeys: listSelectedKeys
disabled: listDisabled
}
({ direction, selectedKeys, disabled }: Args) => {
// on hover, direction is of 'any' type
console.log(direction)
}
好像您在对象中混合了一些属性。有些有价值,有些没有。尝试这样的事情:
{
direction: aDirection,
filteredItems: filteredItems,
onItemSelectAll: onItemSelectAllFunction,
onItemSelect: onItemSelectFunction,
selectedKeys: listSelectedKeys,
disabled: listDisabled,
}
右侧的所有变量应在某处定义
我想您正在尝试为解构对象属性指定类型,如果是这种情况,请尝试此
<Test>
{({
direction,
filteredItems,
onItemSelectAll,
onItemSelect,
selectedKeys: listSelectedKeys,
disabled: listDisabled
}: {
direction: any;
filteredItems: any;
onItemSelectAll: any;
onItemSelect: any;
selectedKeys: { listSelectedKeys: any };
disabled: { listDisabled: any };
}) => { const columns = direction === 'left' ? leftColumns : rightColumns;