ฉันพบว่าตัวเองใช้สำนวนนี้ในเทมเพลต HTML ที่ใช้ KO อยู่ตลอดเวลา:
<!-- ko if: isEdit -->
<td><input type="text" name="email" data-bind="value: email" /></td>
<!-- /ko -->
<!-- ko ifnot: isEdit -->
<td data-bind="text: email"></td>
<!-- /ko -->
มีวิธีที่ดีกว่า / สะอาดกว่าในการทำเงื่อนไขใน KO หรือมีแนวทางที่ดีกว่าการใช้โครงสร้าง if-else แบบเดิมหรือไม่?
นอกจากนี้ฉันอยากจะชี้ให้เห็นว่า Internet Explorer (IE 8/9) บางเวอร์ชันไม่ได้แยกวิเคราะห์ตัวอย่างข้างต้นอย่างถูกต้อง โปรดดูคำถาม SO นี้สำหรับข้อมูลเพิ่มเติม สรุปโดยย่อคืออย่าใช้ความคิดเห็น (การผูกเสมือน) ภายในแท็กตารางเพื่อรองรับ IE ใช้tbodyแทน:
<tbody data-bind="if: display"><tr><td>hello</td></tr></tbody>