我已经构建了一个小型扩展,我不得不在许多地方(如 manifest.json 等)对 URL 进行硬编码。但我希望开发环境和生产环境之间的 URL 域不同。想知道什么是正确的做法。
问问题
568 次
2 回答
0
如果您知道您的生产扩展 url,那么您可以看到扩展 ID。假设扩展 url 是https://chrome.google.com/webstore/detail/eme-call-and-event-logger/cniohcjecdcdhgmlofniddfoeokbpbpb所以var chromeruntimeid='cniohcjecdcdhgmlofniddfoeokbpbpb';
if(chrome.runtime.id==chromeruntimeid){
console.log('production');
}else{
console.log('development');
}
于 2016-02-25T05:22:04.240 回答
-1
您可以尝试通过以下方式创建一个 JSON 文件并在其中包含不同的键、值对:
"development": {
"oauth-code": "xyz"
}
"production": {
"oauth-code": "xyz"
}
然后将 settings.json 加载到您的主脚本中,并根据您以下列方式选择的环境动态访问设置:
var settings = [code to load JSON file, depending upon the language that you choose]
console.log(settings['production'].oauth-code);
console.log(settings['development'].oauth-code);
它将帮助您更轻松地根据环境获取自定义设置,您也可以尝试在 JS 文件中使用具有相同属性的应用程序对象,其方式几乎相同,但建议将设置和主要逻辑从彼此。
于 2012-09-14T07:24:39.633 回答