为ember fixture数据添加延迟以模拟ajax

Sam*_*off 6 ember.js ember-data

我正在使用Ember灯具来构建我的应用程序原型,并且我想在第一次请求模型来模拟ajax请求时添加延迟.这可能吗?

int*_*xel 6

好问题.在FixtureAdapter有确切的功能内置,需要配置的属性被称为latency.试试这个:

App.Store = DS.Store.extend({
  adapter: DS.FixtureAdapter.create({ latency: 5000 });
});
Run Code Online (Sandbox Code Playgroud)

这将使5000毫秒(5秒)的延迟增加FixtureAdapter,等待它返回数据前5秒.

虽然@ Daniel的答案也是一种有效的方法,但是使用这个内置功能会让你的模型挂钩不受影响,当你在某个时候切换到另一个适配器时根本不需要任何努力,并且不需要删除模拟承诺,使代码更清晰.

希望能帮助到你.