我有一个使用grunt的角度应用程序设置,但我希望能够使用grunt作为预处理器来替换变量,并且我一直无法找到任何匹配的我的需求。例如,如果我在配置文件中将我的主应用程序模块的名称更改为“someAppName”,我想在各种html和js文件中使用诸如“ENV.APP_NAME”之类的内容,并将其替换为以适合该环境的价值。使用Grunt预处理和替换环境变量
理想我想有一个配置文件沿着这些线路的某处,无论是作为上传.json文件或使用module.exports以暴露一个对象,该对象指定为不同的环境的值:
{
APP_NAME:{
dev: "someAppDev",
prod: "someApp"
},
API_BASE:{
dev: "localhost:8000/",
prod: "https://www.some-site.com/api/"
}
}
和那么我可以创建一个grunt任务,并将它传递给“dev”或“prod”,让它运行预处理器并用相应的值替换每个实例。我发现这个https://github.com/STAH/grunt-preprocessor,但这些例子令人困惑,我不认为这正是我期待的。
是否有这样的事情,允许您创建预处理的环境变量,并从外部配置文件读取它们,还是我被迫构建自己的grunt插件?有没有人获得类似的咕噜声?
编辑:我已经开始建设一个咕噜插件为这个特定的任务,一旦完成并测试我会后它挂在故宫
也许这会帮助更换/如何使用的环境变量 - 在 - 你r-angular-application – cyan 2015-02-07 22:25:17
我已经看到了,它确实添加了环境变量,但不是作为预处理器。所以我可以访问控制器中的环境变量,但是我不能将它作为html文件或json的一部分,并且将其替换为我正在寻找的 – ejfrancis 2015-02-07 22:29:43
也许独立程序会读取所有html js文件之前和替换指定的标签?它可能是用java编写的。像全部替换。 – cyan 2015-02-07 22:36:31