我试图在我的3种环境中使用不同的颜色主题:dev(绿色),uat(蓝色)和prod(红色)。
我想知道是否可以在global.scala中读取scala中的环境变量
override def onStart(app: Application) {
val env = System.getenv("SYSTEM_ENV") //{DEV|UAT|PRD}
}
然后在我拥有的LESS文件上做一些事情,myTheme.LESS
@basecolor: #3B6A52;
将从我的其他CSS / LESS文件中读取,作为基本背景基色
我可以在这里使用一些逻辑来确定scala变量的颜色吗? 例如如果开发然后绿色其他如果......等等
或者如果我可以有3个mytheme文件,例如mythemeRed.LESS,mytmemeBlue.LESS可以通过播放来决定只阅读其中一个。
请给我一些启示,欢迎任何想法。
答案 0 :(得分:0)
我认为以这种方式混合javascript和LESS是不可能的。我会做类似的事情:
if (env === "DEV"){
var styleRef = document.createElement("link");
styleRef.setAttribute("rel", "stylesheet");
styleRef.setAttribute("type", "text/css");
styleRef.setAttribute("href", "dev-style.css");
document.getElementsByTagName("head")[0].appendChild(styleRef);
}
else if (env === "UAT"){
...
}
等等。然后,您可以根据您的环境获取正确的已编译CSS文件。