我试图用钩子的反应,但我必须失去了一些东西。我发现了不是一个函数为下面的任何组的功能。
以此作为参考:https://reactjs.org/docs/hooks-state.html
function Login() {
const [user, pass, setUser, setPass, test, setTest] = useState();
return (
<LoginWrapper>
<Branding brand={brand.brandName} />
<FormWrapper>
<Stack>
<TextInput
type="text"
label="Username"
onChange={() => setUser(this)}
/>
</Stack>
<Stack>
<TextInput
type="password"
label="Password"
onChange={() => setPass(this)}
/>
</Stack>
<Stack padding="0" align="right">
<Button
onClick={() => {
setTest("user and pass");
}}
>
Login
</Button>
</Stack>
</FormWrapper>
</LoginWrapper>
);
}
答案 0 :(得分:5)
通过使用useState
,您将获得一个数组,其中第一个元素是初始状态,第二个元素是该状态的设置器。
您pass
实际上是设置器user
。
要使用多个值就像你想做的事,你必须做这样的事情:
const [user, setUser] = useState(...);
const [pass, setPass] = useState(...);
const [test, setTest] = useState(...);
或者,您也可以将其用作具有单个useState
的组合对象,但是不必将其与当前状态合并。