เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ
การกำหนดเงื่อนไขช่วยให้คุณสามารถควบคุมการแสดงผลหรือซ่อนเนื้อหาในเอกสารได้แบบไดนามิก โดยอิงตามค่าของข้อมูลครับ/ค่ะ มีวิธีการเขียนเงื่อนไขหลักๆ อยู่ 3 แบบดังนี้:
เงื่อนไขทั้งหมดจะเริ่มต้นด้วยตัวจัดรูปแบบการประเมินตรรกะ (เช่น ifEQ, ifGT เป็นต้น) และตามด้วยตัวจัดรูปแบบการดำเนินการ (เช่น show, elseShow, drop, keep เป็นต้น) ครับ/ค่ะ
ตัวดำเนินการเชิงตรรกะและตัวจัดรูปแบบการดำเนินการที่รองรับในการกำหนดเงื่อนไข ได้แก่:
ตัวดำเนินการเชิงตรรกะ (Logical Operators)
ifEQ(value): ตรวจสอบว่าข้อมูลเท่ากับค่าที่ระบุหรือไม่ifNE(value): ตรวจสอบว่าข้อมูลไม่เท่ากับค่าที่ระบุหรือไม่ifGT(value): ตรวจสอบว่าข้อมูลมากกว่าค่าที่ระบุหรือไม่ifGTE(value): ตรวจสอบว่าข้อมูลมากกว่าหรือเท่ากับค่าที่ระบุหรือไม่ifLT(value): ตรวจสอบว่าข้อมูลน้อยกว่าค่าที่ระบุหรือไม่ifLTE(value): ตรวจสอบว่าข้อมูลน้อยกว่าหรือเท่ากับค่าที่ระบุหรือไม่ifIN(value): ตรวจสอบว่าข้อมูลมีอยู่ในอาร์เรย์หรือสตริงหรือไม่ifNIN(value): ตรวจสอบว่าข้อมูลไม่มีอยู่ในอาร์เรย์หรือสตริงหรือไม่ifEM(): ตรวจสอบว่าข้อมูลว่างเปล่าหรือไม่ (เช่น null, undefined, สตริงว่าง, อาร์เรย์ว่าง หรืออ็อบเจกต์ว่าง)ifNEM(): ตรวจสอบว่าข้อมูลไม่ว่างเปล่าหรือไม่ifTE(type): ตรวจสอบว่าประเภทข้อมูลเท่ากับประเภทที่ระบุหรือไม่ (เช่น "string", "number", "boolean" เป็นต้น)and(value): ตรรกะ "และ" ใช้สำหรับเชื่อมเงื่อนไขหลายรายการor(value): ตรรกะ "หรือ" ใช้สำหรับเชื่อมเงื่อนไขหลายรายการตัวจัดรูปแบบการดำเนินการ (Action Formatters)
:show(text) / :elseShow(text): ใช้ในเงื่อนไขแบบอินไลน์ เพื่อแสดงผลข้อความที่ระบุโดยตรง:hideBegin / :hideEnd และ :showBegin / :showEnd: ใช้ในบล็อกเงื่อนไข เพื่อซ่อนหรือแสดงบล็อกเอกสาร:drop(element) / :keep(element): ใช้ในเงื่อนไขอัจฉริยะ เพื่อลบหรือเก็บองค์ประกอบเอกสารที่ระบุในส่วนถัดไป เราจะมาดูไวยากรณ์โดยละเอียด ตัวอย่าง และผลลัพธ์ของการใช้งานแต่ละแบบกันครับ/ค่ะ
:show(text) / :elseShow(text)สมมติว่าข้อมูลคือ:
เทมเพลตมีดังนี้:
ใช้ตัวจัดรูปแบบเงื่อนไขต่อเนื่องกันเพื่อสร้างโครงสร้างที่คล้ายกับ switch-case:
หรือใช้ตัวดำเนินการ or เพื่อให้ได้ผลลัพธ์เดียวกัน:
ข้อมูล:
เทมเพลต:
ใช้ตัวดำเนินการเชิงตรรกะ and/or เพื่อทดสอบหลายตัวแปรได้:
ข้อมูล:
เทมเพลต:
ในส่วนถัดไป ตัวจัดรูปแบบที่อธิบายไว้จะใช้รูปแบบเงื่อนไขแบบอินไลน์ โดยมีไวยากรณ์ดังนี้:
:and(value)หาก d.car เท่ากับ 'delorean' และ d.speed มากกว่า 80 จะแสดงผลเป็น TravelInTime ครับ/ค่ะ มิฉะนั้นจะแสดงผลเป็น StayHere
:or(value)หาก d.car เท่ากับ 'delorean' หรือ d.speed มากกว่า 80 จะแสดงผลเป็น TravelInTime ครับ/ค่ะ มิฉะนั้นจะแสดงผลเป็น StayHere
:ifEM()สำหรับ null หรืออาร์เรย์ว่างเปล่า จะแสดงผลเป็น Result true ครับ/ค่ะ มิฉะนั้นจะแสดงผลเป็น Result false
:ifNEM()สำหรับข้อมูลที่ไม่ว่างเปล่า (เช่น ตัวเลข 0 หรือสตริง 'homer') จะแสดงผลเป็น Result true ครับ/ค่ะ สำหรับข้อมูลที่ว่างเปล่าจะแสดงผลเป็น Result false
:ifEQ(value)หากข้อมูลเท่ากับค่าที่ระบุ จะแสดงผลเป็น Result true ครับ/ค่ะ มิฉะนั้นจะแสดงผลเป็น Result false
:ifNE(value)ตัวอย่างแรกจะแสดงผลเป็น Result false ครับ/ค่ะ ส่วนตัวอย่างที่สองจะแสดงผลเป็น Result true
:ifGT(value)ตัวอย่างแรกจะแสดงผลเป็น Result true ครับ/ค่ะ ส่วนตัวอย่างที่สองจะแสดงผลเป็น Result false
:ifGTE(value)ตัวอย่างแรกจะแสดงผลเป็น Result true ครับ/ค่ะ ส่วนตัวอย่างที่สองจะแสดงผลเป็น Result false
:ifLT(value)ตัวอย่างแรกจะแสดงผลเป็น Result true ครับ/ค่ะ ส่วนตัวอย่างที่สองจะแสดงผลเป็น Result false
:ifLTE(value)ตัวอย่างแรกจะแสดงผลเป็น Result true ครับ/ค่ะ ส่วนตัวอย่างที่สองจะแสดงผลเป็น Result false
:ifIN(value)ทั้งสองตัวอย่างจะแสดงผลเป็น Result true ครับ/ค่ะ (เนื่องจากสตริงมี 'is' และอาร์เรย์มี 2)
:ifNIN(value)ตัวอย่างแรกจะแสดงผลเป็น Result false ครับ/ค่ะ (เนื่องจากสตริงมี 'is') และตัวอย่างที่สองจะแสดงผลเป็น Result false (เนื่องจากอาร์เรย์มี 2)
:ifTE(type)ตัวอย่างแรกจะแสดงผลเป็น Result true ครับ/ค่ะ (เนื่องจาก 'homer' เป็นสตริง) และตัวอย่างที่สองจะแสดงผลเป็น Result true (เนื่องจาก 10.5 เป็นตัวเลข)
บล็อกเงื่อนไขใช้สำหรับแสดงผลหรือซ่อนเนื้อหาในส่วนต่างๆ ของเอกสารครับ/ค่ะ มักใช้เพื่อครอบคลุมแท็กหลายรายการหรือข้อความทั้งบล็อก
:showBegin / :showEndข้อมูล:
เทมเพลต:
เมื่อเงื่อนไขเป็นจริง เนื้อหาที่อยู่ตรงกลางจะแสดงผล:
:hideBegin / :hideEndข้อมูล:
เทมเพลต:
เมื่อเงื่อนไขเป็นจริง เนื้อหาที่อยู่ตรงกลางจะถูกซ่อนไว้ ทำให้ได้ผลลัพธ์ดังนี้: