Некоторые из моих объектов данных используют готовый HTML с обычными тегами, окруженными «<» и «>». Mustache.js преобразует их в <
и >
. Выполнение String.replace(/>/g,'>').replace(/</g,'<')
на результирующем выходе приводит к значительному запаздыванию.
Это ожидаемое поведение? Можно ли изменить его, чтобы сохранить символы <и>? Следует ли как-то избежать этих символов?
Вывод данных с помощью {{data}}
(двойные усы) всегда экранирует символы HTML. Используйте {{{data}}}
(тройные усы), если не хотите, чтобы оно экранировалось.
о, круто! Я этого не знал. спасибо, thedufer.
@ amper5and : обратите внимание, что если вы используете {{{ data }}}
это _ва__ ответственность за то, чтобы убедиться, что вы не создаете уязвимости XSS или CSRF, поскольку вы обходите механизм, предназначенный для предотвращения этого :)
Кроме того, я считаю, что синтаксис {{&data}}
эквивалентен, хотя я никогда его не использовал.
это круто👍 !!!
Самый полезный комментарий
Вывод данных с помощью
{{data}}
(двойные усы) всегда экранирует символы HTML. Используйте{{{data}}}
(тройные усы), если не хотите, чтобы оно экранировалось.