我有一个React组件的代码。声明传递给组件的两个onClick
处理程序的正确方法是什么?
interface LoginFormProps {
loginClicked: ???? <--- onClick handler signature
cancelClicked: ???? <--- onClick handler signature
}
class LoginForm extends React.Component<LoginFormProps, {}> {
render() {
<form>
<button onClick={loginClicked}>
Login
</button>
<button onClick={cancelClicked}>
Cancel
</button>
</form>
}
}
答案 0 :(得分:6)
我通常使用:
interface ILoginFormProps {
loginClicked: (ev) => void;
//
}
但是如果你想对你的打字非常严格:
interface ILoginFormProps {
loginClicked: (ev: React.MouseEvent<HTMLButtonElement>) => void;
//
}