Ale*_*nts 3 javascript cordova gruntjs hybrid-mobile-app ionic-framework
就像我们在Spring Framework中有很多变体来设置编译/运行/测试时环境,并使用它来设置不同的属性文件.除了这个环境/配置文件变量之外,我们不会更改任何内容,以便能够对app进行适当的设置.
更具体地说:
我有两个文件:settings.dev.js和settings.prod.js
settings.prod.js:
var API_PATH = "http://example.com/api"
var OTHER_INPORTANT_SETTINGS = {....}
Run Code Online (Sandbox Code Playgroud)
settings.dev.js:
var API_PATH = "http://localhost.com/api"
var OTHER_INPORTANT_SETTINGS = {....}
Run Code Online (Sandbox Code Playgroud)
和一个Ionic Framework应用程序,其中服务正在使用此设置.例如
me: $resource(API_PATH + '/my/profile', {}, {...}
Run Code Online (Sandbox Code Playgroud)
在许多服务和控制器以及指令......等等......
有没有办法使用
小智 5
我只是为这个问题开发了一个解决方案.
创建一个grunt任务(或等效的构建工具)将settings.<env>.js
文件复制到settings.js
文件.
copy: {
dev: {
src: 'settings.dev.js',
dest: 'settings.js'
},
prod: {
src: 'settings.prod.js',
dest: 'settings.js'
}
},
grunt.registerTask('dev', [
'copy:development'
]);
grunt.registerTask('prod', [
'copy:prod'
]);
Run Code Online (Sandbox Code Playgroud)包含settings.js
在您的html或js文件中.
添加settings.js
到您的.gitignore
文件,以便您的环境特定文件不会影响其他人.
归档时间: |
|
查看次数: |
3994 次 |
最近记录: |