使用JS访问EJS文件中的静态文件



所以我已经使用node.js创建了一个小应用

app.use(express.static('assets'));

现在在我的.ejs文件中,我可以轻松地引用图像,例如

var img = document.createElement('img');
img.src = '/img/picture.jpg'

现在,我想做的是循环浏览该文件夹中的所有图像,然后在页面上显示它们。

之类的东西
var images = new Array();
images = { All pictures in the /img directory }
images.forEach(function(image) {
    var img = document.createElement('img');
    img.src = image;
}

所以我的问题是,如何使用JS?获得所有静态图像的名称?或使用node.js进行此服务器端,然后将图像传递到.ejs文件。通常,哪个是更好的练习(可以是一个单独的问题,但我想我会问(?

预先感谢

所以我的问题是,如何使用JS获取所有静态图像的名称?

客户端对服务器将响应的URL一无所知,直到向其提出请求。

我是否必须对目录进行AJAX调用才能读取文件名?

那将是一种可能的方法。

或使用node.js进行此服务器端,然后将图像传递到.ejs文件。

也可以工作

通常,哪个是更好的练习(可以是一个单独的问题,但我想我会问(?

这取决于。

使用AJAX需要第二个HTTP请求,但是可以缓存响应。

在页面加载会减少请求数时进行操作,但要启动,但是每次页面加载时都必须完成列表的工作,并且会增加该页面的大小。

因此,最好使用唯一的可测量指标,取决于个人要重新加载页面的频率以及列表变化的频率。

最新更新