Javascript 如何在React Js中使用提示更改状态值?

Javascript 如何在React Js中使用提示更改状态值?,javascript,reactjs,Javascript,Reactjs,当我在提示符中写入smth时,我希望它更改Hayko值。。。这意味着,当你们在浏览器中打开它时,它会显示cragravorox,在这之后,我想提示改变Hayko的值 const Count = () => { const [Hayko, setHayko] = useState('cragoravorox') return( <> <div>{Hayko}</div> <button onClick

当我在提示符中写入smth时,我希望它更改Hayko值。。。这意味着,当你们在浏览器中打开它时,它会显示cragravorox,在这之后,我想提示改变Hayko的值

const Count = () => {
   const [Hayko, setHayko] = useState('cragoravorox')

   return(
      <>
      <div>{Hayko}</div>
      <button onClick={() => {prompt(('enter my name') )}}> Change me </button>
      </>
   )

}
export default Count
const Count=()=>{
const[Hayko,setHayko]=useState('cragoravorox')
返回(
{Hayko}
{prompt(('entermyname'))}>更改我
)
}
导出默认计数

找到了Dacre Denny的一个例子

const enteredName=prompt('请输入您的姓名')
//可以通过多种方式将其与现有react组件集成—一种方法可能如下所示:
/*handleClick-in组件的定义*/
handleClick=(事件)=>{
/*使用自定义消息调用prompt(),从类似警报的对话框中获取用户输入*/
const enteredName=prompt('请输入您的姓名')
/*使用用户提供的数据更新此组件的状态。存储数据
在“enteredName”状态字段中。调用setState会触发
此组件意味着输入的名称值将通过
更新了下面的render()函数*/
this.setState({enteredName:enteredName})
}
render:function(){
返回(
{/*出于演示目的,以下是呈现数据的方式
以前由用户输入*/}
以前输入的用户名:{this.state.enteredName}

); }
});将提示值设置为变量

const promptValue=prompt('enter my name')

然后在
sethayko(promptValue)
hook onClick中使用它

sethayko(promptValue)}>更改我

您只需执行以下操作:

const Count = () => {
  const [Hayko, setHayko] = useState('foo');

  return (
    <>
      <div>{Hayko}</div>
      <button onClick={() => setHayko(prompt('enter my name'))}>Change me</button>
    </>
  );
}
const Count=()=>{
const[Hayko,setHayko]=useState('foo');
返回(
{Hayko}
setHayko(提示(“输入我的名字”)}>更改我
);
}

对使用提示符的美感没有评论:)

你已经做到了一半。您只是缺少了需要使用
提示符
调用返回的值,即用户输入的值,然后将状态设置为该值。以下是如何进行最小改动:

const Count = () => {
   const [Hayko, setHayko] = useState('cragoravorox')

   return(
      <>
          <div>{Hayko}</div>
          <button onClick={() => setHayko(prompt('enter my name'))}> Change me </button>
      </>
   )

}
export default Count

首先,您需要使用'let'而不是'const',那么我需要做什么呢?const Count=()=>{const[Hayko,setHayko]=useState('cragoravorox')const promptValue=prompt('enter my name')return({Hayko}{setHayko promptValue}}>单击我)}导出默认计数我这样写的,但它不起作用,兄弟。非常感谢,我会带你进去的。非常感谢它的工作,但是如果你能解释为什么我们要写setHayko(newHayko),因为调用
setHayko
会将状态值设置为你传递的参数。有关解释,请参见示例。
const Count = () => {
   const [Hayko, setHayko] = useState('cragoravorox')

   const handleClick = () => {
       const newHayko = prompt(('enter my name'))
       setHayko(newHayko)
   }

   return(
      <>
          <div>{Hayko}</div>
          <button onClick={handleClick}}> Change me </button>
      </>
   )

}
export default Count