หลังจากอ่านบทช่วยสอน AngularJS ขั้นตอนที่ 9 ฉันได้สร้างตัวกรอง AngularJS ของตัวเองซึ่งควรแปลงข้อมูลบูลีนเป็น html
นี่คือรหัสตัวกรองของฉัน:
angular.module('phonecatFilters', []).filter('iconify', function () { // My custom filter
return function (input) {
return input ? '<i class="icon-ok"></i>' : '<i class="icon-remove"></i>';
}
});
นี่คือรหัส HTML ของฉัน:
<dt>Infrared</dt>
<dd>{{phone.connectivity.infrared | iconify }}"></dd>
ปัญหาคือ borwser แสดงค่าที่ส่งคืนตามตัวอักษร:
<i class="icon-ok"></i>
ไม่ใช่เป็นไอคอน (หรือ html ที่แสดงผล) ที่ควรปรากฏ
ฉันคิดว่าการฆ่าเชื้อบางอย่างเกิดขึ้นในระหว่างกระบวนการนี้
เป็นไปได้ไหมที่จะปิดการฆ่าเชื้อนี้สำหรับตัวกรองเฉพาะนี้
นอกจากนี้ฉันรู้วิธีแสดงไอคอนโดยไม่ส่งคืนเอาต์พุต HTML จากตัวกรอง แต่ใช้แค่ข้อความ 'ok' หรือ 'remove' ซึ่งฉันสามารถใช้แทน:
<i class="icon-{{phone.connectivity.infrared | iconify}}"><i>
แต่นี่ไม่ใช่สิ่งที่ฉันต้องการ