Chèn html vào mẫu tay cầm mà không thoát


143

Có cách nào để chèn một chuỗi có thẻ html vào mẫu tay lái mà không khiến các thẻ thoát trong chuỗi sắp tới không?

template.js:

<p>{{content}}</p>

sử dụng mẫu

HBS.template({content: "<i>test</i> 123"})

kết quả thực tế:

<p>&lt;i&gt;test&lt;/i&gt; 123</p>

kết quả mong đợi:

<p><i>test</i> 123</p>

Câu trả lời:


348

Thử như

<p>{{{content}}}</p>

Tôi có tài liệu tham khảo chính thức để hỗ trợ câu trả lời của tôi:

Các giá trị thoát khỏi tay cầm HTML được trả về bởi a {{expression}}. Nếu bạn không muốn Tay lái thoát khỏi một giá trị, hãy sử dụng "bộ ba số" , {{{.


27
Đối với một lần, một cái gì đó đơn giản .
Madbreaks

7
Thành thật mà nói có vẻ như là điều tồi tệ nhất họ có thể đã chọn vì thật khó để nhận ra. Tại sao không chỉ là một cái gì đó đơn giản nhưng có thể nhìn thấy như thế {{ rawHtml expression }}.
danneu

1
Đồng ý với @danneu. Không có phép thuật hay tốc ký dễ thương, xin vui lòng. Rõ ràng là tốt hơn về lâu dài.
Matt

29

Trong mẫu của bạn, bạn phải thêm ba ria mép như thế này. <p>{{{content}}}</p>


11

Theo tài liệu của Handbars, http://handlebarsjs.com/expressions.html

Trích dẫn từ tài liệu ,

Nếu bạn không muốn Tay lái thoát khỏi một giá trị, hãy sử dụng "bộ ba", {{{

Chuyển mẫu HTML thô sang mẫu Tay cầm và nhận đầu ra HTML thô bằng cách sử dụng dấu ngoặc ba.

{{{foo}}}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.