我在.jade文件中使用此代码,在for循环中迭代并使用对象的值呈现html:
- var linkExist = function(i){
- if (result[i]){
- var html = ',follow on ' + i + ': <a href="' + result[i] + '" target="_blank">' + result[i].split("http://")[1] + '</a>';
- return html;
- };
- }
#{linkExist('Twitter')}
#{linkExist('GitHub')}
它会添加额外的评论,然后在<
之后再添加>
,例如
<
,follow on Twitter:
<a href="http://twitter.com/user" target="_blank">twitter.com/user</a>
>
<!--,follow on Twitter: <a href="http://twitter.com/user" target="_blank"-->
twitter.com/user
>
<
,follow on GitHub:
<a href="http://github.com/user" target="_blank">github.com/user</a>
>
<!--,follow on GitHub: <a href="http://github.com/user" target="_blank"-->
github.com/user
>
btw,如果我使用
=linkExist('Twitter')
or
| #{linkExist('Twitter')}
它将html呈现为文本,但是正确的内容。 (但作为文字,而不是HTML)
答案 0 :(得分:1)
知道了,
jade自动转义html。为了避免这种情况,可以使用!=
。
所以我改为:
- var linkExist = function(i){
- if (result[i]){
- var html = ' ,follow on ' + i + ': <a href="' + result[i] + '" target="_blank">' + result[i].split("http://")[1] + '</a>';
- return html;
- };
- }
!= linkExist('Twitter')
!= linkExist('GitHub')