Bagaimana untuk mengubah suai nilai atribut dalam tindak balas

藏色散人
Lepaskan: 2022-12-29 09:23:45
asal
2766 orang telah melayarinya

Cara mengubah suai nilai atribut dalam tindak balas: 1. Buka fail kod yang sepadan 2. Cipta objek tatasusunan; )=> ;key == 0?{...item,name: "Jony"}:item)});" kaedah boleh mengubah suai nilai atribut tertentu dalam objek tatasusunan.

Bagaimana untuk mengubah suai nilai atribut dalam tindak balas

Persekitaran pengendalian tutorial ini: Sistem Windows 10, bertindak balas versi 18.0.0, komputer Dell G3.

Bagaimana untuk mengubah suai nilai atribut dalam tindak balas?

React mengubah suai nilai atribut tertentu dalam objek tatasusunan

Secara amnya, kami akan memproses data dalam Pengawal dan menghantarnya ke lapisan View untuk paparan, kaedah tugasan mudah ini adalah seperti berikut

this.setSate({ 
 toList: response.data 
})
Salin selepas log masuk

Pelaksanaan Vue adalah seperti berikut

this.todoList = response.data;
Salin selepas log masuk

Sebagai contoh, ini adalah data yang dihantar kepada kami melalui latar belakang,

Bagaimanakah kita boleh menukar nilai salah satu atribut `name` objek tatasusunan?

 state = {//类似于Vue里面的data()
    todoList: [
      {
        img: "xxx",
        name: "小飞",
      },
      {
        img: "xxx",
        name: "小候",
      },
    ]
  };
Salin selepas log masuk

Mari kita lihat dahulu cara melaksanakannya dalam vue

this.todoList[0].name = "Jony";
//或者
this.$set(this.todoList[0],"name","Jony");
Salin selepas log masuk

Wah~ Ia sebenarnya agak mudah, jadi bagaimana untuk melaksanakannya dalam React?

Ini yang saya bayangkan...

 this.setState({
      todoList[0].name:"Jony"
    })
    //这样报错了,立马想到另一种方式
   let obj = {
      img:"xxx",
      name:"Jony"
    }
    this.setState({
      todoList[0]:obj
    })
Salin selepas log masuk

tidak mungkin Editor dan penyemak imbas kami melaporkan ralat, memberitahu kami bahawa kami tidak boleh menulis seperti ini

<. 🎜>Bagaimana untuk mengubah suai nilai atribut dalam tindak balas

Jadi bagaimana untuk melaksanakannya

//三目运算符 `key == 0` 是我写死的
//如果是点击传入的话可以是`key == index(下标)`
 const todoList = [...this.state.todoList];   //浅拷贝一下
  this.setState({
      todoList: todoList.map((item,key)=>key == 0?{...item,name: "Jony"}:item)
    });
Salin selepas log masuk
Ini adalah penerangan setState di laman web rasmi

Bagaimana untuk mengubah suai nilai atribut dalam tindak balas

Disyorkan kajian : "

tutorial video reaksi

Atas ialah kandungan terperinci Bagaimana untuk mengubah suai nilai atribut dalam tindak balas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan