Meteor:如何根据CLI参数加载不同的文件?
在我的Meteor(1.2)应用程序中,我将开发和生产文件分开 e、 gMeteor:如何根据CLI参数加载不同的文件?,meteor,Meteor,在我的Meteor(1.2)应用程序中,我将开发和生产文件分开 e、 g client/lib/appVars.config.PROD.js client/lib/appVars.config.config.js 理想情况下,“孪生”文件具有相同的变量、函数等,但差异不大,但调试和生产常用的(全局)变量和函数具有相同的名称 有没有一种方法可以使用命令行参数DEBUG_MODE=true | false调用meteor run,这样我就可以根据当前模式(调试、生产)加载一个或另一个文件了?设置
- client/lib/appVars.config.PROD.js
- client/lib/appVars.config.config.js
有没有一种方法可以使用命令行参数DEBUG_MODE=true | false调用meteor run,这样我就可以根据当前模式(调试、生产)加载一个或另一个文件了?设置不同的环境变量并通过CLI运行
meteor run--settings settings.json
然后您只需要一个development and production(和staging?)settings.json
设置文件的示例:
{
"awsBucket": "my-example-staging",
"awsAccessKeyId": "AABBCCddEEff12123131",
"awsSecretKey": "AABBCCddEEff12123131+AABBCCddEEff12123131",
"public": {
"awsBucketUrl": "https://my-meteor-example.s3.amazonaws.com",
"environment": "staging"
},
"googleApiKey": "AABBCCddEEff12123131"
}
编辑添加:
要访问环境密钥,只需选择
Meteor.settings.awsBucket
安全更新(感谢Dave Weldon)
看
重新生产与开发相比,您应该有两个settings.json文件,一个用于生产(.config/settings.json)的标准文件,一个用于开发(.config/development/config.json),当您在生产之外启动时,您将启动meteor--settings.config/development/settings.json
对于客户端,请注意,如果您将密钥公开,例如
{
"service_id":"...",
"service_secret":"...",
"public":{
"service_name":"..."
}
}
然后,只有
Meteor.settings.public.service\u name
可以在客户端访问谢谢。这是否意味着我需要根据环境更改settings.json文件?还有,我应该把文件放在哪里?此外,如何访问meteor应用程序中settings.json中的字段?您可以将文件放入应用程序的根目录中,如图所示。有关更多示例和安全注意事项,请参阅。更新以回答您的问题dragonmnl,希望一切正常