在启动Meteor.js时自动加载settings.json

时间:2014-01-09 02:20:16

标签: javascript node.js meteor

而不是使用标志--settings settings.json

启动Meteor
mrt --settings settings.json

是否可以通过运行

在启动时自动定义Meteor.Settings
mrt

3 个答案:

答案 0 :(得分:11)

现在命令应该是meteor(不再是mrt):

meteor --settings settings.json

要自动加载设置文件,我喜欢利用npm的“The Meteor Chef”建议的方法:

在项目根目录中创建文件package.json

{
  "name": "my-app",
  "version": "1.0.0",
  "scripts": {
    "start": "meteor --settings settings.json"
  }
}

我们可以用以下方式开始流星:

npm start

<强> DEV / PROD

还可以为两个或更多设置提供两个或更多脚本:

{
  "name": "my-app",
  "version": "1.0.0",
  "scripts": {
    "meteor:dev": "meteor --settings settings-dev.json",
    "meteor:prod": "meteor --settings settings-prod.json"
  }
}

然后:

npm run meteor:dev

npm run meteor:prod

(请注意,这里我们必须添加run命令,“特殊”脚本start不需要<)

答案 1 :(得分:7)

对于开发者,请使用alias

alias mrt='mrt --settings settings.json'

alias mrts='mrt --settings settings.json'

使用unalias mrts

将其删除

如果您希望它永久保留,请将其放在~/.bashrc~/.bash_profile

或者,meteor接受环境变量(对生产有用)

METEOR_SETTINGS = `cat path/to/settings.json`
export METEOR_SETTINGS

答案 2 :(得分:4)

如果您不想使用别名,可以在特定项目的根目录中创建一个bash脚本,如下所示:

<强> dev.sh:

#!/bin/bash
meteor --settings ./config/development/settings.json

然后从流星项目目录中运行:

./dev.sh

如果你得到-bash: ./dev.sh: Permission denied,请执行:

chmod +x ./dev.sh

如果您使用其他服务,您可以在流星之前启动它们:

#!/bin/bash
sudo service elasticsearch start
meteor --settings ./config/development/settings.json