我正在使用EJS和我正在构建的Node.js web服务器。我看到很多示例在输出超文本标记语言或字符串时有时使用<%=,而其他示例(有时在同一模板中)使用<%-。
我试图引用the EJS文档和getting started guide,但这两个文档都没有提供有关<%-表示法的信息。此外,我在谷歌上搜索的尝试也没有得到任何有用的结果。谢谢!
发布于 2017-08-02 01:39:27
来自http://ejs.co/
<% 'Scriptlet' tag, for control-flow, no output
<%= Outputs the value into the template (HTML escaped)
<%- Outputs the unescaped value into the template发布于 2020-03-04 17:25:55
<%= *param* %>用于将数据从视图传输到控制器,反之亦然
而<%- %>将包含其他代码
我的项目是

发布于 2019-03-02 06:17:53
使用<%=时,如果您要呈现一些包含包含HTML代码的字符串的变量,它不会呈现该HTML代码,而是将其呈现为文本,以避免跨站点脚本攻击。
使用减号( <%- )可以避免这种情况,并真正呈现HTML代码。
https://stackoverflow.com/questions/11024840
复制相似问题