如何在Meteor中将文件名读入数组

时间:2016-12-14 16:41:22

标签: javascript meteor

在Meteor中,我的项目中有一个流星/公共文件夹,里面有小缩略图文件。

jane_smith.jpg
bob_jackson.jpg
...

这些用于芯片'在Materialise中,带有名称和人物形象的小标签。

同一个流星/公共文件夹也有一些初始图像(字母A-Z),用于那些没有缩略图的Materialise芯片

initialA.png
initialB.png
...

我尝试做的是使用图像文件(如果可用),或使用初始的.png文件(如果不可用)。当图像存在时,它没什么大不了的。

{{#each List}}
<div class="chip">
     <img src="img/{{FullName}}.jpg">{{FullName}}
</div>
{{/each}}

当然,当.jpg不存在时,src不会读取任何图像。我想以某种方式读取meteor / public的内容并将这些名称放在一个数组中,以便可以搜索.jpg文件。如果不存在,将使用相应的(正确的第一个字母).png文件。可以这样做吗?或者有更好的方法来实现这一目标吗?

1 个答案:

答案 0 :(得分:1)

您可以使用节点“fs”模块在服务器上查询文件系统,文档在这里。

https://nodejs.org/api/fs.html

请注意公用文件夹的位置在生产中会有所不同,但您可以使用当前工作目录中的相对文件路径。

您是在运行时自行添加这些芯片还是静态?希望是后者,因为否则meteor会在检测到新文件时重建。

另一个选择是将芯片读入数据库,然后你可以查看。 vsivsi:文件集合对此有好处(和其他人一样)