[英]Multiline variables in Pug (ex-Jade)
有可能使用它吗? 例如这里:
- var movieList = [{title: "Ocean's Eleven", rating: 9.2}, {title: "Pirates of the Caribbean", rating: 9.7}];
mixin movie-card(movie)
h2.movie-title= movie.title
div.rating
p= movie.rating
for movie in movieList
+movie-card(movie)
我不想使用-
在每一行的开头。 如果不可能,有可能导入多行JSON文件?
从版本2.0.3开始,可以使用以下语法:
-
var arr = ["Very", "Long",
"Array"];
链接到拉取请求: https : //github.com/pugjs/pug/pull/1965
您可以使用LOCALS(Jade)或DATA(Pug)在编译期间导入JSON数据。 这是我通过gulpjs和Pug做的方式,movieList将是在gulpfile.js中创建的数据,songs.json将是一个外部文件。 如果您使用的是任务管理器或快递等,那么您的代码示例并不清楚......
gulpfile.js
var fs = require('fs'),
gulp = require('gulp'),
pug = require('gulp-pug'),
movieList = [{title: "Ocean's Eleven", rating: 9.2}, {title: "Pirates of the Caribbean", rating: 9.7}];
gulp.task('markup', function() {
gulp.src('./markup/*.pug')
.pipe(pug({
data: {
// in Jade, this would be "locals: {"
"movies": movieList,
"music": JSON.parse( fs.readFileSync('./songs.json', { encoding: 'utf8' }) )
}
)
.pipe(gulp.dest('../'))
});
});
并在帕格模板中
- var movieList = locals['movies'] // assuming this will eventually be "= data['movies']"
- var musicList = locals['music'] // assuming this will eventually be "= data['music']"
mixin movie-card(movie)
h2.movie-title= movie.title
div.rating
p= movie.rating
for movie in movieList
+movie-card(movie)
mixin song-card(song)
h2.song-title #{song.title}
div.rating
p #{song.rating}
for song in musicList
+song-card(song)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.