Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我如何为我的猜谜游戏实现一个不';在用户猜到之前不要一直更改?_Javascript_Reactjs_React Native - Fatal编程技术网

Javascript 我如何为我的猜谜游戏实现一个不';在用户猜到之前不要一直更改?

Javascript 我如何为我的猜谜游戏实现一个不';在用户猜到之前不要一直更改?,javascript,reactjs,react-native,Javascript,Reactjs,React Native,每次我点击“确认”,它都会生成一个新的随机数,所以你实际上猜不到它。如何显示用户尝试猜测的次数?请帮助我,因为我已经被困在这几个小时了。谢谢 const Home = () => { const [enteredValue, setEnteredValue] = useState(""); const [confirmed, setConfirmed] = useState(false); const [selectedNumber, setSelectedNumber] =

每次我点击“确认”,它都会生成一个新的随机数,所以你实际上猜不到它。如何显示用户尝试猜测的次数?请帮助我,因为我已经被困在这几个小时了。谢谢

const Home = () => {
  const [enteredValue, setEnteredValue] = useState("");
  const [confirmed, setConfirmed] = useState(false);
  const [selectedNumber, setSelectedNumber] = useState();

  const input = inputText => {
    setEnteredValue(inputText.replace(/[^0-9]/g, ""));
  };

  const reset = () => {
    setEnteredValue("");
    setConfirmed(false);
  };

  const confirm = () => {
    const chosenNum = parseInt(enteredValue);
    setConfirmed(true);
    setSelectedNumber(chosenNum);
    setEnteredValue("");
    let x = Math.floor(Math.random() * 100) + 1;
    let count = 0;
    if (!enteredValue) {
      Alert.alert("Please Enter a Number");
    } else if (chosenNum > x) {
      Alert.alert("Guess Lower");
      count+=1
    } else if (chosenNum < x) {
      Alert.alert("Guess Higher");
      count+=1
    } else if (chosenNum == x) {
      Alert.alert("You Guessed Correctly");
    }
  };

  let confirmedOutput;
  if (confirmed) {
    confirmedOutput = (
      <View>
        <Text style={styles.output}>Chosen Number: {selectedNumber}</Text>
        <Text>Tries: </Text>
      </View>
    );
  }

const Home=()=>{
常量[enteredValue,setEnteredValue]=useState(“”);
const[confirm,setconfirm]=使用状态(false);
常量[selectedNumber,setSelectedNumber]=useState();
常量输入=输入文本=>{
setEnteredValue(inputText.replace(/[^0-9]/g,”);
};
常数重置=()=>{
setEnteredValue(“”);
设置已确认(假);
};
常量确认=()=>{
const chosenNum=parseInt(输入值);
setconfirm(true);
setSelectedNumber(chosenNum);
setEnteredValue(“”);
设x=Math.floor(Math.random()*100)+1;
让计数=0;
如果(!enteredValue){
警报。警报(“请输入一个数字”);
}else if(chosenNum>x){
警惕。警惕(“猜低”);
计数+=1
}else if(chosenNum
您正在
确认
函数中生成x号。因此,每次用户猜测(正确与否)x都将更改

你应该带上这个:

let x = Math.floor(Math.random() * 100) + 1;
let count = 0;
退出函数,当游戏开始时,它将被调用

当用户猜测正确时,重新生成新x并重置计数:

// ...
 } else if (chosenNum == x) {
      Alert.alert("You Guessed Correctly");
      x = Math.floor(Math.random() * 100) + 1;
      count = 0;
 }

count
是指用户尝试进行一次尝试,在视图中显示。

Math.random()Vanilla JavaScript methodHello,你想1)显示用户错误尝试的次数?2)在用户正确猜到之前保持猜数修正?@NehaSharma是的,请告诉我如何显示计数的数量?在游戏开始之前,我应该将x和count=0放在哪里?我不知道你是如何构建组件的不知道游戏从哪里开始。请将它放在
Home
组件的第一行,在
useState
行下,您可以使用与
selectedNumber
相同的方式显示
count
尝试:{count}
与selectedNumber相同的意思是什么?如果count和x不在函数范围内,它们将如何使用?
尝试:{count}
?因此,将它们放在
主页
范围内,而不是
确认
函数范围内