亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在const中分配值

在const中分配值

慕娘9325324 2021-04-28 14:09:38
如何在我的常量中分配一個值?在表單中,我檢查了一些輸入,當該值為true時,我需要更改此值以與客戶端的Web服務通信,如果為false,我也需要更改該值,但是我不能簡單地通過用新值聲明const。我試圖直接在const中更改值,但是它不起作用在CodeSandbox中遵循我的代碼:https ://codesandbox.io/s/n08n2m7mpjimport React, { useState } from "react";import ReactDOM from "react-dom";import Switch from "@material-ui/core/Switch";import "./styles.css";function App(props) {  const initialFormState = {    datRev: "01/05/2019",    empRev: "1",    numCad: "5",    numEmp: "1",    obsRev: "ReactJS done!",    sitRev: "1",    tipCol: "1",    tipEqp: "10",    tipSvc: "100",    cheklist: {      "": "",      "": "",      "": "",      "": ""    },    codCkl: "4",    sitCkl: "N",    selPro: "S",    obsCkl: "obs insomina"  };  const [equipRev, setEquipRevisao] = useState(initialFormState);  const [checkedA, setCheckedA] = useState(false);  const handleChange = nameChecked => event => {    const { name, value } = event.target;    setCheckedA({ [nameChecked]: event.target.checked });    if (event.target.checked === true) {      console.log("True: " + event.target.checked);      const value = "S";    } else {      console.log("False: " + event.target.checked);      const value = "N";    }    console.log("Value: " + value);    setEquipRevisao({ ...equipRev, [name]: value });    console.log("sitCkl: " + equipRev.sitCkl);  };  return (    <div className="App">      <h1>Hello CodeSandbox</h1>      <h2>Start editing to see some magic happen!</h2>      <Switch        name="sitCkl"        checked={props.checkedA}        onChange={handleChange("checkedA")}        value={equipRev.sitCkl}      />    </div>  );}const rootElement = document.getElementById("root");ReactDOM.render(<App />, rootElement);我希望“ event.target.checked”為true,它將sitCkl的值從equipRev更改為“ S”,如果為false,則將sitCkl的值從equipRev更改為“ N”。
查看完整描述

2 回答

?
翻翻過去那場雪

TA貢獻2065條經驗 獲得超14個贊

如果必須更改其值,則可以使用let代替聲明它const。(重點const不是重新分配值)。


  const handleChange = nameChecked => event => {

    let { name, value } = event.target;


    setCheckedA({ [nameChecked]: event.target.checked });


    if (event.target.checked === true) {

      console.log("True: " + event.target.checked);

      value = "S";

//...


查看完整回答
反對 回復 2021-05-06
?
米脂

TA貢獻1836條經驗 獲得超3個贊

常量是塊作用域的,非常類似于使用let語句定義的變量。常量的值不能通過重新分配而更改,也不能重新聲明

因此,const的要點是,一旦聲明它,就不能更改它。如果需要將值分配和重新分配給變量的能力。使用letvar會更好。


查看完整回答
反對 回復 2021-05-06
  • 2 回答
  • 0 關注
  • 209 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號