Computed ใน vue.js

Computed properties (คุณสมบัติ Computed) ใน Vue.js เป็นหนึ่งในคุณสมบัติสำคัญที่ช่วยในการจัดการและคำนวณข้อมูลในตัวแปรหรือคุณสมบัติที่ถูกสร้างขึ้นใน Vue instance อย่างสะดวกและเรียบง่าย เราสามารถใช้ computed properties เพื่อสร้างค่าที่อาจจะต้องคำนวณจากข้อมูลหรือค่าอื่น ๆ ใน Vue instance โดยมีการแคช (cache) ผลลัพธ์เพื่อประหยัดเวลาและประสิทธิภาพในการคำนวณ เราสามารถสร้าง computed properties ในโค้ด Vue.js ดังนี้:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<template>
<div>
<p>Original Message: {{ message }}</p>
<p>Reversed Message: {{ reversedMessage }}</p>
</div>
</template>

<script>
export default {
data() {
return {
message: "Hello Vue.js",
};
},
computed: {
reversedMessage() {
// คำนวณค่าจาก message และส่งคืนผลลัพธ์
return this.message.split("").reverse().join("");
},
},
};
</script>

ในตัวอย่างนี้:

  • เรามีคุณสมบัติ message ใน data ที่เก็บข้อความ “Hello Vue.js”.
  • เราสร้าง computed property ชื่อ reversedMessage ซึ่งจะคำนวณข้อความที่ถอยกลับ (reverse) จาก message และส่งคืนผลลัพธ์.
  • ใน template เราแสดงข้อความเดิมและข้อความที่ถอยกลับโดยใช้ {{ reversedMessage }}.

ข้อดีของ computed properties คือว่าค่าของมันจะถูกแคช (cached) และจะไม่ถูกคำนวณใหม่ทุกครั้งที่ข้อมูลในข้อความเปลี่ยนแปลง นี่ทำให้คุณสามารถควบคุมประสิทธิภาพและประหยัดเวลาในการคำนวณข้อมูลที่ซับซ้อนได้อย่างมีประสิทธิภาพในแอปพลิเคชัน Vue.js ของคุณ.