Isikan tatasusunan dengan pasangan nilai kunci
P粉865900994
P粉865900994 2023-09-02 16:55:11
0
1
450
<p>Saya cuba mengisi tatasusunan dengan objek. Jika saya melaksanakan setState, entri baharu tidak ditambah, tetapi struktur tatasusunan diperluaskan. Contohnya: entri awal (0), entri baharu (0->0), entri lain (0->0->0). Walau bagaimanapun, saya ingin setiap penyertaan mempunyai nombor berturut-turut. </p> <pre class="brush:php;toolbar:false;">const [entrys, setEntrys] = useState([{ date: "", entry: "" }]); ->Butang klik setEntrys((sebelumnya) => [{ ...sebelumnya, tarikh: clickedDay, entri: hinweis }]);</pre>
P粉865900994
P粉865900994

membalas semua(1)
P粉475315142

Masalah yang anda hadapi ialah anda menggunakan keadaan sebelumnya dalam objek yang anda lalui, cth.

Apa yang anda mahu lakukan ialah memasukkan keadaan sebelumnya dalam objek baharu yang disimpan untuk dinyatakan, cth. "sebelumnya" sebagai elemen berasingan dalam tatasusunan - seperti di bawah.

Saya juga menyediakan anda dengan codesandbox https://codesandbox.io/s/romantic-solomon-l566yy?file=/src/App.js.

import "./styles.css";
import React, { useState } from "react";

const App = () => {
  const [entries, setEntries] = useState([
    {
      date: "",
      text: ""
    }
  ]);

  const handleClick = () => {
    setEntries((prevEntry) => {
      return [...prevEntry, { date: "date", text: "test" }];
    });
  };

  return (
    <div>
      <button onClick={handleClick}>Click me!</button>
    </div>
  );
};

export default App;
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!