ปฏิกิริยาของอาร์เรย์ใน Vue

ปฏิกิริยาจะทำงานแม้เมื่อมีการเปลี่ยนแปลง อาร์เรย์ที่แสดงผลผ่าน v-for มาลองทำตัวอย่างเพื่อให้ เมื่อกดปุ่ม จะมีการเพิ่มองค์ประกอบใหม่ลงในอาร์เรย์อย่างมีปฏิกิริยา และการเปลี่ยนแปลง จะเกิดขึ้นบนหน้าจอทันที

ลองนำสิ่งที่อธิบายไปใช้งาน สมมติว่าเรามีอาร์เรย์:

javascriptdata() {
  return {
    arr: ['a', 'b', 'c'],
  }
}

มาแสดงผลองค์ประกอบของ อาร์เรย์นี้ในลูป:

App.vue<template>
  <p v-for="elem in arr">
    {{ elem }}
  </p>
</template>

สร้างปุ่ม ที่เมื่อกด จะเพิ่มองค์ประกอบใหม่ลงในอาร์เรย์:

App.vue<template>
  <p v-for="elem in arr">
    {{ elem }}
  </p>
  <button @click="add">add</button>
</template>

มาใช้งานเมธอดที่เกี่ยวข้อง:

App.vuemethods: {
  add: function() {
    this.arr.push('xxx');
  }
}
Задание 1

มีปุ่ม ให้ อาร์เรย์ แสดงผลองค์ประกอบ ของอาร์เรย์นี้ในรูปแบบรายการ ul ทำให้ เมื่อกดปุ่ม จะมีรายการใหม่ เพิ่มที่ท้ายรายการนี้

Задание 2

มีปุ่ม ให้ อาร์เรย์ แสดงผลองค์ประกอบ ของอาร์เรย์นี้ในรูปแบบรายการ ul ทำให้ ทุกครั้งที่กดปุ่ม รายการแรกของรายการถูกลบออก

Задание 3

มีปุ่ม ให้ อาร์เรย์ แสดงผลองค์ประกอบ ของอาร์เรย์นี้ในรูปแบบรายการ ul ทำให้ ทุกครั้งที่กดปุ่ม รายการสุดท้ายของรายการถูกลบออก

Задание 4

มีปุ่ม ให้ อาร์เรย์ แสดงผลองค์ประกอบ ของอาร์เรย์นี้ในรูปแบบรายการ ul ทำให้ ทุกครั้งที่กดปุ่ม รายการรองสุดท้ายของรายการถูกลบออก

Задание 5

มีปุ่ม ให้ อาร์เรย์ แสดงผลองค์ประกอบ ของอาร์เรย์นี้ในรูปแบบรายการ ul ทำให้ เมื่อกดปุ่ม รายการในรายการเรียงลำดับ

Задание 6

มีปุ่ม ให้ อาร์เรย์ แสดงผลองค์ประกอบ ของอาร์เรย์นี้ในรูปแบบรายการ ul ทำให้ เมื่อกดปุ่ม รายการในรายการเรียงลำดับ ในลำดับย้อนกลับ

ข้อยกเว้น

เนื่องจากข้อจำกัดของ JavaScript, Vue ไม่สามารถ ตรวจจับการเปลี่ยนแปลงต่อไปนี้ในอาร์เรย์ได้: การกำหนดค่า องค์ประกอบโดยตรงผ่านดัชนี: items[คีย์] = ค่าใหม่ และการเปลี่ยนความยาว ของอาร์เรย์โดยชัดเจน เช่น: items.length = ความยาวใหม่