Javascript 反应|如何从状态更新中删除prevent.default
我有一个状态更新函数,单击它可以呈现一个模态。以下是函数:Javascript 反应|如何从状态更新中删除prevent.default,javascript,reactjs,typescript,Javascript,Reactjs,Typescript,我有一个状态更新函数,单击它可以呈现一个模态。以下是函数: openDeleteUserModal = ({ row }: { row: IUser | null }): any => ( event: React.SyntheticEvent ): void => { if (event) event.preventDefault(); this.setState({ userToDelete: row, isDeleteUserModalOpen:
openDeleteUserModal = ({ row }: { row: IUser | null }): any => (
event: React.SyntheticEvent
): void => {
if (event) event.preventDefault();
this.setState({ userToDelete: row, isDeleteUserModalOpen: true });
};
问题是,单击的元素是一个带有href的a标记
export const userDeleteRenderer = (options: any): any => (
cell: string,
row: string
): JSX.Element => {
const deleteUserClick = options.onClick({ cell, row });
return (
<div className="float-right" data-test="delete-icon">
<a href="#" className="text-danger p-1 text-lg" onClick={deleteUserClick}>
<Icon icon="trash" />
</a>
</div>
);
};
export const userDeleteRenderer=(选项:any):any=>(
单元格:字符串,
行:字符串
):JSX.Element=>{
constDeleteUserClick=options.onClick({cell,row});
返回(
);
};
因此,如果我删除了prevent默认值并执行类似操作,就会立即调用模态。已调试,无法找到原因
你能帮我删除上面的“防止默认值”吗。这使我的测试生活非常困难。如果我把它取下来,它会更干净。谢谢 您可以使用以下内容:
<a href="javascript:void(0)" className="text-danger p-1 text-lg" onClick={deleteUserClick}>
<Icon icon="trash" />
</a>
<div onClick={deleteUserClick} style={{cursor: "pointer"}}>
<Icon icon="trash" />
</div>
但是,如果您只需要光标,您可以使用CSS进行如下操作:
<a href="javascript:void(0)" className="text-danger p-1 text-lg" onClick={deleteUserClick}>
<Icon icon="trash" />
</a>
<div onClick={deleteUserClick} style={{cursor: "pointer"}}>
<Icon icon="trash" />
</div>
您可以使用以下内容:
<a href="javascript:void(0)" className="text-danger p-1 text-lg" onClick={deleteUserClick}>
<Icon icon="trash" />
</a>
<div onClick={deleteUserClick} style={{cursor: "pointer"}}>
<Icon icon="trash" />
</div>
但是,如果您只需要光标,您可以使用CSS进行如下操作:
<a href="javascript:void(0)" className="text-danger p-1 text-lg" onClick={deleteUserClick}>
<Icon icon="trash" />
</a>
<div onClick={deleteUserClick} style={{cursor: "pointer"}}>
<Icon icon="trash" />
</div>
如果您不使用to-link anywhere,为什么不将其替换为或类似内容?如果您不使用to-link anywhere,为什么不将其替换为或类似内容?遗憾的是,我已经尝试过css修复。似乎有什么东西触发了状态,onLoad。我还没弄明白。我对你竖起大拇指,但我不能检查它是否正确。非常感谢。遗憾的是,我已经尝试了css修复。似乎有什么东西触发了状态,onLoad。我还没弄明白。我对你竖起大拇指,但我不能检查它是否正确。非常感谢。