emberjs 标签下有几个问题,讨论如何管理不同的环境,但所有问题都只适用于非常具体的场景。
我正在寻找如何为不同的环境设置不同的配置变量的一般解决方案。
假设示例我的开发环境有一个API网址,而我的生产环境有另一个API网址。
wget http://example.com/controller/action/param -O NUL
在我的适配器中,我想使用相应的API网址:
production_api_url: "http://production.server.com/api"
development_api_url: "http://development.server.com/api"
答案 0 :(得分:5)
在Ember 2.2和EmberCLI中,它可以像现在这样开箱即用:
为每个环境设置URLS :
# /app/adapters/application.js
import ActiveModelAdapter from 'active-model-adapter';
export default ActiveModelAdapter.extend({
namespace: 'api',
host: [[API_URL]]
});
使用适配器中的URL:
# /config/environments.js
...
if (production === 'production') {
ENV.API_HOST = 'http://production.server.com'
}
if (environment === 'development') {
ENV.API_HOST = 'http://development.server.com'
}
...