从文件夹中获取要在ejs中渲染的图像,可以通过以下步骤实现:
以下是一个示例代码片段,使用Node.js和ejs模板引擎来实现上述步骤:
const fs = require('fs');
const ejs = require('ejs');
const folderPath = '/path/to/folder'; // 替换为实际的文件夹路径
// 读取文件夹内容
fs.readdir(folderPath, (err, files) => {
if (err) {
console.error('Failed to read folder:', err);
return;
}
// 筛选图像文件
const imageFiles = files.filter(file => {
const extension = file.split('.').pop().toLowerCase();
return ['.jpg', '.png', '.gif'].includes(extension);
});
// 构建图像URL列表
const imageUrls = imageFiles.map(file => `${folderPath}/${file}`);
// 渲染ejs模板
ejs.renderFile('template.ejs', { imageUrls }, (err, renderedHtml) => {
if (err) {
console.error('Failed to render template:', err);
return;
}
console.log(renderedHtml); // 输出渲染后的HTML内容
});
});
在上述示例中,需要将/path/to/folder
替换为实际的文件夹路径,并确保安装了Node.js的fs和ejs模块。此外,还需要创建一个名为template.ejs
的ejs模板文件,其中可以使用<img>
标签来渲染图像,例如:
<% imageUrls.forEach(url => { %>
<img src="<%= url %>" alt="Image">
<% }) %>
这样,就可以从文件夹中获取图像,并在ejs模板中进行渲染了。
领取专属 10元无门槛券
手把手带您无忧上云