Bob*_*ler 6 directory server-side meteor
在Meteor客户端,我知道项目公共目录中的文件在'/'处引用.
它们如何在服务器端引用?
我试图用fs.readdir获取目录列表,但我不知道如何构建路径到达服务器端等效于客户端'/ images/gallery'.
有什么建议?
接受的"./public/"答案在Meteor 1.1中对我不起作用.
但是,Meteor通过meteor_bootstrap .serverDir变量提供服务器路径,因此要获取公用文件夹路径,请使用以下行:
path.join(__meteor_bootstrap__.serverDir, "../web.browser/app");
Run Code Online (Sandbox Code Playgroud)
这适用于我的本地Windows机器和meteor.com.
请注意,这是您的公用文件夹的"运行"版本,所以 - 至少在开发中,我还没有在生产中检查这部分 - 它实际上是您的开发"public"文件夹和所有客户端JS的合并文件.如果项目中有"config"文件夹,公共目录中有"config"文件夹,则"运行"路径将包含两者的内容.
当我使用 fs-module 时,我只使用“./public”作为我的公共文件夹,在我的本地安装上运行良好。
然后我使用环境变量将其设置为生产服务器上正确的值。
编辑(示例):
此方法将返回公共文件夹中的所有 .HTML 文件:
getHtmlFilesInPublicFolder: function() {
var files = fs.readdirSync('./public/');
var cleanedUpFiles = _(files).reject( function(fileName) {
return fileName.indexOf('.html') < 0;
});
return cleanedUpFiles;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7148 次 |
| 最近记录: |