Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > Cara menggunakan tag senarai dalam Vue untuk melaksanakan fungsi penyuntingan klik dua kali

Cara menggunakan tag senarai dalam Vue untuk melaksanakan fungsi penyuntingan klik dua kali

PHPz
Lepaskan: 2023-04-17 11:41:20
asal
2128 orang telah melayarinya

Vue ialah rangka kerja JavaScript yang sangat popular yang membolehkan pembangun membina antara muka interaktif dengan cepat. Antaranya, Vue menyediakan banyak komponen dan arahan praktikal, seperti tag senarai, untuk menjadikan kerja pembangunan lebih mudah. Dalam pembangunan sebenar, kita biasanya perlu melaksanakan operasi interaktif seperti penyuntingan dan pemadaman dalam senarai. Artikel ini akan memperkenalkan cara menggunakan teg senarai dalam Vue untuk melaksanakan fungsi pengeditan klik dua kali.

1. Teg senarai

Dalam Vue, kita boleh menggunakan arahan v-for untuk memaparkan senarai, contohnya:

<div v-for="(item, index) in items">{{item}}</div>
Salin selepas log masuk

Di sini, items ialah tatasusunan , arahan v-for akan menjadikan setiap elemen dalam tatasusunan sebagai elemen <div>. Kita juga boleh menggunakan arahan v-bind:key untuk menentukan pengecam unik bagi setiap elemen, contohnya:

<div v-for="(item, index) in items" v-bind:key="item.id">{{item.name}}</div>
Salin selepas log masuk

Di sini, dengan mengandaikan bahawa setiap elemen mempunyai atribut id yang unik, kita boleh menggunakan v-bind:key arahan untuk menentukan.

2. Laksanakan pengeditan dwiklik

Dalam senarai, selalunya perlu untuk melaksanakan operasi penyuntingan. Dalam Vue, kami boleh menggunakan peristiwa klik dua kali untuk mencetuskan operasi pengeditan. Mula-mula, kita boleh menambah v-for pendengar acara untuk setiap elemen dalam @dblclick, contohnya:

<div v-for="(item, index) in items" v-bind:key="item.id" @dblclick="editItem(index)">
  {{item.name}}
</div>
Salin selepas log masuk

Di sini, apabila elemen diklik dua kali, kaedah editItem akan dicetuskan, dan Lulus indeks elemen dalam tatasusunan. Kaedah editItem boleh melaksanakan operasi membuka kotak edit, contohnya:

methods: {
  editItem(index) {
    this.editingIndex = index;  // 设置当前编辑元素的索引
    this.editingValue = this.items[index].name;  // 设置当前编辑元素的值
  }
}
Salin selepas log masuk

Dalam kod di atas, editingIndex dan editingValue mewakili indeks dan nilai elemen yang sedang diedit , masing-masing. Melalui acara klik dua kali, kita boleh menyimpan indeks dan nilai elemen yang sedang diedit.

Seterusnya, kita perlu menunjukkan dan menyembunyikan kotak edit. Kami boleh menggunakan bendera showEditingField untuk menunjukkan sama ada kotak edit perlu dipaparkan, contohnya:

<div v-for="(item, index) in items" v-bind:key="item.id" @dblclick="editItem(index)">
  <div v-if="index !== editingIndex">{{item.name}}</div>
  <div v-else>
    <input type="text" v-model="editingValue">
    <button @click="saveItem">保存</button>
    <button @click="cancelEdit">取消</button>
  </div>
</div>
Salin selepas log masuk

Di sini, kami menggunakan arahan v-if untuk mengawal kandungan paparan berdasarkan indeks dan penyuntingan status elemen semasa. Jika elemen semasa bukan elemen yang sedang diedit, nilai asal elemen dipaparkan jika tidak, kotak input dan butang simpan dan batal dipaparkan.

Apabila pengguna mengklik butang simpan, kami boleh melakukan operasi simpan dan menetapkan semula keadaan pengeditan. Operasi simpan boleh mengemas kini nilai elemen yang sepadan dalam tatasusunan, contohnya:

methods: {
  saveItem() {
    this.items[this.editingIndex].name = this.editingValue;
    this.editingIndex = -1;
    this.editingValue = "";
  },
  cancelEdit() {
    this.editingIndex = -1;
    this.editingValue = "";
  }
}
Salin selepas log masuk

Di sini, kami menggunakan this.items[this.editingIndex].name = this.editingValue untuk mengemas kini nilai elemen yang sepadan dalam tatasusunan dan menetapkan editingIndex dan editingValue kepada -1 dan rentetan kosong untuk menetapkan semula keadaan pengeditan.

3. Ringkasan

Dalam artikel ini, kami memperkenalkan cara menggunakan tag senarai dalam Vue untuk melaksanakan fungsi pengeditan klik dua kali. Berikan senarai melalui v-for, gunakan pendengar acara klik dua kali untuk membuka kotak edit, gunakan perintah v-if untuk mengawal kandungan paparan berdasarkan status penyuntingan elemen dan gunakan bendera untuk mengawal paparan dan menyembunyikan daripada kotak suntingan. Artikel ini hanya memberikan idea pelaksanaan dan kaedah pelaksanaan tertentu mungkin berbeza-beza bergantung pada keperluan projek.

Atas ialah kandungan terperinci Cara menggunakan tag senarai dalam Vue untuk melaksanakan fungsi penyuntingan klik dua kali. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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