我已经构建了一个小扩展,我必须在很多地方对URL进行硬编码(比如manifest.json等)。但我希望不同的URL域名在dev& amp;生产环境。想知道什么是正确的做法。
答案 0 :(得分:0)
如果您可以知道您的生产扩展程序网址,那么您可以看到扩展程序ID。假设扩展网址为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');
}
答案 1 :(得分:-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文件中使用具有相同属性的应用程序对象,其方式几乎相同,但建议单独设置和彼此的主要逻辑。