การผูกแอตทริบิวต์และคลาส
ผูกแอตทริบิวต์ คลาส และสไตล์แบบไดนามิก
การผูกแอตทริบิวต์และคลาส เป็นบทเรียน Vue Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Vue Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Vue Academy มีบทเรียนทั้งหมด 3 บทเรียน
การผูกคลาสและสไตล์
ความต้องการที่พบบ่อยคือการเปลี่ยนคลาสหรือสไตล์ขององค์ประกอบตามสถานะ
Vue มีการจัดการพิเศษสำหรับ :class และ :style ทำให้คุณส่งออบเจ็กต์และอาร์เรย์ได้ ไม่ใช่แค่สตริง
ไวยากรณ์ออบเจ็กต์ของ :class
ส่งออบเจ็กต์ให้กับ :class คีย์คือชื่อคลาส ส่วนค่าที่เป็นจริงจะทำให้คลาสนั้นถูกนำไปใช้
<div :class="{ active: isActive, disabled: isDisabled }">
Status box
</div>
<!-- if isActive is true, the "active"
class is applied -->การรวมคลาสแบบคงที่และแบบไดนามิก
แอตทริบิวต์ class แบบคงที่และ :class แบบไดนามิกจะถูกรวมเข้าด้วยกัน
<div class="card" :class="{ highlighted: isSelected }">
Always has "card";
adds "highlighted" when selected.
</div>ไวยากรณ์อาร์เรย์ของ :class
ส่งอาร์เรย์เพื่อใช้รายการคลาสต่าง ๆ
<div :class="[baseClass, themeClass]">Box</div>
<!-- data:
baseClass = "panel"
themeClass = "dark" -->เงื่อนไขในอาร์เรย์
คุณสามารถผสมนิพจน์เงื่อนไขไว้ภายในอาร์เรย์ได้
<div :class="[isActive ? 'active' : '', errorClass]">
...
</div>
<!-- or nest an object inside the array -->
<div :class="[baseClass, { active: isActive }]">
...
</div>การผูกสไตล์แบบอินไลน์
คำสั่ง :style ใช้ผูกสไตล์แบบอินไลน์ด้วยออบเจ็กต์
ใช้ชื่อพร็อพเพอร์ตีแบบ camelCase เช่น fontSize
<p :style="{ color: textColor, fontSize: size + 'px' }">
Styled text
</p>
<!-- data: textColor = "red", size = 18 -->:style กับอาร์เรย์
คุณสามารถส่งอาร์เรย์ที่ประกอบด้วยออบเจ็กต์สไตล์ แล้ว Vue จะผสานออบเจ็กต์เหล่านั้นให้
<div :style="[baseStyles, overrideStyles]">
Merged styles
</div>การเติมคำนำหน้าอัตโนมัติ
เมื่อพร็อพเพอร์ตี CSS ต้องใช้คำนำหน้าสำหรับเบราว์เซอร์บางรุ่น Vue สามารถเติมคำนำหน้าให้โดยอัตโนมัติในกรณีที่เบราว์เซอร์รองรับ
- คุณเขียนพร็อพเพอร์ตีมาตรฐาน
- Vue จะใช้คำนำหน้าที่เหมาะสมเมื่อจำเป็น
วิธีนี้ช่วยให้การผูกสไตล์ของคุณสะอาดและอ่านง่าย
การผูกแอตทริบิวต์แบบไดนามิก
คุณสามารถผูกแอตทริบิวต์ใดก็ได้แบบไดนามิกด้วย :attr
<img :src="photoUrl" :alt="photoCaption" />
<input :placeholder="hintText" :maxlength="limit" />
<a :href="link" :target="openInNewTab ? '_blank' : '_self'">Go</a>แอตทริบิวต์บูลีน
สำหรับแอตทริบิวต์บูลีน เช่น disabled Vue จะใส่แอตทริบิวต์นั้นเมื่อค่าเป็นจริงเท่านั้น
<button :disabled="isSubmitting">Submit</button>
<!-- if isSubmitting is false,
the disabled attribute is removed -->การผูกหลายคลาสแบบมีเงื่อนไข
ตัวอย่างที่ใช้งานได้จริงสำหรับสลับหลายคลาสพร้อมกัน
<li
class="todo"
:class="{
done: task.completed,
overdue: task.isLate,
priority: task.urgent
}"
>
{{ task.title }}
</li>ตรวจสอบความเข้าใจ
ทดสอบความเข้าใจของคุณเกี่ยวกับการผูกคลาสและสไตล์
ทบทวน: การผูกแอตทริบิวต์และคลาส
คุณได้เรียนรู้การผูกแบบไดนามิกดังนี้
- ไวยากรณ์ออบเจ็กต์ของ :class ใช้สลับคลาสตามค่าที่เป็นจริง
- ไวยากรณ์อาร์เรย์ของ :class ใช้กำหนดรายการคลาส
- :style ใช้ผูกสไตล์แบบอินไลน์ด้วยคีย์แบบ camelCase
- คุณสามารถผูกแอตทริบิวต์ใดก็ได้ด้วย :attr
- แอตทริบิวต์บูลีนจะแสดงเมื่อค่าเป็นจริงเท่านั้น
ถัดไป: พื้นฐานของคอมโพเนนต์และการสื่อสารระหว่างคอมโพเนนต์
คำถามที่พบบ่อย
บทเรียน “การผูกแอตทริบิวต์และคลาส” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การผูกแอตทริบิวต์และคลาส” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Vue Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Vue Academy มีบทเรียนทั้งหมด 3 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การผูกแอตทริบิวต์และคลาส”
ผูกแอตทริบิวต์ คลาส และสไตล์แบบไดนามิก คุณปฏิบัติ Vue Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Vue Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Vue Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน
บทเรียน “การผูกแอตทริบิวต์และคลาส” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Vue Academy นี้ได้ไหม
ได้ บทเรียน Vue Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การแทรกค่าและคำสั่ง
- เงื่อนไขและลูป
- การผูกแอตทริบิวต์และคลาส