我应该如何用外部脚本构建Meteor项目

How should I structure a Meteor project with external scripts?

本文关键字:构建 Meteor 项目 脚本 何用外 我应该      更新时间:2023-09-26

我很好奇是否有人开发了一种最佳实践来组织包含外部shell脚本的Meteor应用程序,或在node.js服务器代码和客户端js代码之外发生的其他后端进程。

例如,我有一个流星应用程序,其结构如下:

project-name
  client
  lib
  models
  packages
  public
  server

我有一个处理一些外部数据源的shell脚本,还有一个执行其他繁重任务的Python脚本。然后,通过将新数据插入Mongo实例,这些都会有所帮助。是的,我知道这有点混乱,但后端数据系统也是如此。我的问题是,我应该把这类项目放在流星应用程序文件夹中,还是应该把它们放在系统之外?只是好奇其他人是如何构建这样的应用程序的。

选项#1

project-name
  client
  ...
  server
    data-processor.sh
    other-utility.py

选项#2

project-name
  client
  ...
  private
    data-processor.sh
    other-utility.py

选项#3

bin
  data-processor.sh
  other-utility.py
meteor-project-name
  client
  ...
  private

您不应该将任何非流星文件放在流星项目目录中,所有这些文件都可以由某个包获取,即使标准的meteor-platform包无法识别扩展名。因此,将它们放入/server可能会在将来引发问题。另一方面,/private文件夹用于存储应用程序使用的资源,因此将脚本放在那里既不美观又不美观。

为了避免将这些脚本移到项目文件夹之外,您可以将它们存储在隐藏目录中,即任何名称以句点开头的目录,即/.scripts。Meteor应用程序不会拾取放置在那里的文件。