在流星中捆绑自定义静态文件
Bundle custom static files in meteor
我想在 meteor 应用程序中捆绑来自不同目录的许多静态文件。我的文件夹结构与规定的标准不同。我在各种目录中都有静态文件,我使用 webapp
为它们提供服务。这适用于我机器上的开发人员,我可以通过 C:\...
中的路径直接访问它们。但是当应用程序被捆绑时,这些文件将不会进入捆绑包。有什么办法告诉流星它也应该捆绑这些目录吗?
我尝试实现一个模块的封装。因此每个模块都有自己的静态文件,每个模块都是应用程序中 运行 所需的所有源文件和静态文件的包。静态文件需要在应用程序文件夹内。我有一个 Modules
目录,其中有 Users
和 Notes
之类的模块,每个模块都可以有自己的静态文件,这些文件将由 url 访问,然后由节点 fs 访问, 但它们不是由 js 导入的。这就是他们不会进入捆绑包的原因。
文件被
使用
const realpath = path.normalize(base + filepath);
const data = fs.readFileSync(realpath);
res.writeHead(200, { "Content-Type": mime.lookup(realpath) });
res.write(data);
res.end();
其中filepath
是根据url的函数计算出来的。
我明确不想使用 public
文件夹或任何标准 meteor 文件夹结构的文件夹。我已经定义了自定义文件夹结构,并考虑了封装的想法。我知道 api.addAssets(filenames, architecture)
但这仅适用于 AFAIK 包。但我猜这是我需要的东西。我希望有可能在捆绑时编写一些脚本 运行 并为捆绑器提供要包含哪些文件的信息。
谢谢。
使用 meteor 的 /private 目录会阻止任何 public 访问,并允许您捆绑应用程序代码。
我想在 meteor 应用程序中捆绑来自不同目录的许多静态文件。我的文件夹结构与规定的标准不同。我在各种目录中都有静态文件,我使用 webapp
为它们提供服务。这适用于我机器上的开发人员,我可以通过 C:\...
中的路径直接访问它们。但是当应用程序被捆绑时,这些文件将不会进入捆绑包。有什么办法告诉流星它也应该捆绑这些目录吗?
我尝试实现一个模块的封装。因此每个模块都有自己的静态文件,每个模块都是应用程序中 运行 所需的所有源文件和静态文件的包。静态文件需要在应用程序文件夹内。我有一个 Modules
目录,其中有 Users
和 Notes
之类的模块,每个模块都可以有自己的静态文件,这些文件将由 url 访问,然后由节点 fs 访问, 但它们不是由 js 导入的。这就是他们不会进入捆绑包的原因。
文件被
使用const realpath = path.normalize(base + filepath);
const data = fs.readFileSync(realpath);
res.writeHead(200, { "Content-Type": mime.lookup(realpath) });
res.write(data);
res.end();
其中filepath
是根据url的函数计算出来的。
我明确不想使用 public
文件夹或任何标准 meteor 文件夹结构的文件夹。我已经定义了自定义文件夹结构,并考虑了封装的想法。我知道 api.addAssets(filenames, architecture)
但这仅适用于 AFAIK 包。但我猜这是我需要的东西。我希望有可能在捆绑时编写一些脚本 运行 并为捆绑器提供要包含哪些文件的信息。
谢谢。
使用 meteor 的 /private 目录会阻止任何 public 访问,并允许您捆绑应用程序代码。