Dev to webs {Coding…}

เรียนรู้การพัฒนาซอฟเวอร์ เพื่อความรู้ที่ยั่งยืน

บทที่ 3: การสร้าง Component เบื้องต้น

1. Component คืออะไร?

Component เป็นส่วนประกอบสำคัญใน Vue.js ที่ช่วยให้การพัฒนา UI มีความยืดหยุ่นและสามารถนำกลับมาใช้ใหม่ได้ (Reusable). ทุก Component ใน Vue.js จะถูกกำหนดเป็นส่วนย่อย ๆ ของหน้าจอ เช่น ปุ่ม, แบบฟอร์ม, หรือส่วนแสดงผลข้อมูล


2. การสร้าง Component เบื้องต้น

ขั้นตอน:

  1. สร้างไฟล์ Component ใหม่
  • สร้างไฟล์ใหม่ในโฟลเดอร์ src/components/ เช่น MyComponent.vue
  1. เขียนโค้ดสำหรับ Component
  • ตัวอย่างโค้ดใน MyComponent.vue:
<template>
  <div>
    <h2>Welcome to My Component</h2>
    <p>This is a reusable component.</p>
  </div>
</template>

<script>
export default {
  name: 'MyComponent'
};
</script>

<style>
div {
  border: 1px solid #ccc;
  padding: 20px;
  margin: 10px 0;
}
</style>
  1. นำ Component ไปใช้งาน
  • เปิดไฟล์ App.vue และเพิ่มโค้ดดังนี้:
<template>
  <div id="app">
    <h1>Main App</h1>
    <MyComponent />
  </div>
</template>

<script>
import MyComponent from './components/MyComponent.vue';

export default {
  name: 'App',
  components: {
    MyComponent
  }
};
</script>

<style>
#app {
  text-align: center;
  margin-top: 50px;
}
</style>
  1. ตรวจสอบผลลัพธ์
  • เรียกใช้งานเซิร์ฟเวอร์ด้วยคำสั่ง:
    bash npm run serve
  • เปิดเบราว์เซอร์และเข้าชมที่ http://localhost:8080

3. การใช้ Props เพื่อส่งข้อมูลไปยัง Component

Props คืออะไร?

Props (Properties) ใช้สำหรับส่งข้อมูลจาก Parent Component ไปยัง Child Component

ตัวอย่าง:

  1. ปรับปรุง Component ให้รองรับ Props
  • แก้ไขไฟล์ MyComponent.vue:
<template>
  <div>
    <h2>{{ title }}</h2>
    <p>{{ description }}</p>
  </div>
</template>

<script>
export default {
  name: 'MyComponent',
  props: {
    title: {
      type: String,
      required: true
    },
    description: {
      type: String,
      default: 'This is a default description.'
    }
  }
};
</script>

<style>
div {
  border: 1px solid #ccc;
  padding: 20px;
  margin: 10px 0;
}
</style>
  1. ส่งค่า Props จาก Parent Component
  • แก้ไขไฟล์ App.vue:
<template>
  <div id="app">
    <h1>Main App</h1>
    <MyComponent title="Hello Vue!" description="This is a reusable component with Props." />
    <MyComponent title="Another Component" />
  </div>
</template>

<script>
import MyComponent from './components/MyComponent.vue';

export default {
  name: 'App',
  components: {
    MyComponent
  }
};
</script>

4. การตรวจสอบ Props ใน DevTools

  1. เปิด Vue DevTools ในเบราว์เซอร์
  2. คลิกเลือก Component ที่ต้องการ
  3. ตรวจสอบค่าที่ถูกส่งผ่าน Props

5. สรุป

ในบทนี้ คุณได้เรียนรู้เกี่ยวกับ:

  • ความหมายของ Component ใน Vue.js
  • วิธีการสร้าง Component เบื้องต้น
  • การใช้ Props เพื่อส่งข้อมูลระหว่าง Component

ในบทถัดไป เราจะศึกษาเกี่ยวกับการใช้ Template ใน Vue.js เพื่อสร้างโครงสร้างที่ยืดหยุ่นมากขึ้น!