在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 回答
您可以使用节点“fs”模块在服务器上查询文件系统,文档在这里 .
https://nodejs.org/api/fs.html
请注意,公用文件夹的位置在 生产环境 中会有所不同,但您可以使用当前工作目录中的相对文件路径 .
您是在运行时自己添加这些芯片还是静态的?希望是后者,因为否则meteor会在检测到新文件时重建 .
另一种选择是将芯片读入数据库,然后你可以查看 . vsivsi:文件集合对此有好处(和其他人一样)