Gulp cheerio 正在部分转义 html 元素
Gulp cheerio is partially escaping html elements
创建了一个单独的最小示例存储库来说明此处发生的事情(有关如何 运行 的说明,请参阅 README.md):
https://github.com/oleersoy/nunjucks-cheerio/
正在渲染的文件是src/test.html
。它包含:
{% for item in ['100', '300'] %}
<div class="u-color-background-gray-{{item}}>
<code>u-color-background-gray-{{item}}</code>
</div>
{% endfor %}
渲染时某些内容被转义,即使 gulp-cheerio
操作应该是空操作,因为它应该作用的内容不存在:
<div class="u-color-background-gray-100>
<code>u-color-background-gray-100</code>
</div>
<div class=" u-color-background-gray-300="">
<code>u-color-background-gray-300</code>
</div>
gulpfile.js
看起来像这样:
gulp.task('test', function() {
return gulp
.src("src/**")
.pipe(nunjucksRender({
path: ["src"]
}))
.pipe(cheerio(function($, file) {
$('.Test-markup > code').each(function() {
var markup = $(this).html();
//Insert the Test-render block after the Test-then block
//Append the markup block to the Test-render block
$($(this).parent().next()).after(renderTestBlock).next().append(markup);
});
}))
.pipe(gulp.dest("dist"));
});
有人知道可能导致内容逃逸的原因吗?
作为参考,我还向 cheerio and gulp-cheerio
提交了问题
在模板字符串 class="u-color-background-gray-{{item}}>
中缺少 "
创建了一个单独的最小示例存储库来说明此处发生的事情(有关如何 运行 的说明,请参阅 README.md):
https://github.com/oleersoy/nunjucks-cheerio/
正在渲染的文件是src/test.html
。它包含:
{% for item in ['100', '300'] %}
<div class="u-color-background-gray-{{item}}>
<code>u-color-background-gray-{{item}}</code>
</div>
{% endfor %}
渲染时某些内容被转义,即使 gulp-cheerio
操作应该是空操作,因为它应该作用的内容不存在:
<div class="u-color-background-gray-100>
<code>u-color-background-gray-100</code>
</div>
<div class=" u-color-background-gray-300="">
<code>u-color-background-gray-300</code>
</div>
gulpfile.js
看起来像这样:
gulp.task('test', function() {
return gulp
.src("src/**")
.pipe(nunjucksRender({
path: ["src"]
}))
.pipe(cheerio(function($, file) {
$('.Test-markup > code').each(function() {
var markup = $(this).html();
//Insert the Test-render block after the Test-then block
//Append the markup block to the Test-render block
$($(this).parent().next()).after(renderTestBlock).next().append(markup);
});
}))
.pipe(gulp.dest("dist"));
});
有人知道可能导致内容逃逸的原因吗?
作为参考,我还向 cheerio and gulp-cheerio
提交了问题在模板字符串 class="u-color-background-gray-{{item}}>
"