Ember 2,使用Ember.run.debounce调用路线中的函数

时间:2017-04-16 11:43:18

标签: javascript ember.js ember-data ember-cli debounce

我在一个名为" 游戏"的路线中。

在一个动作中,我将Ember.run.debounce称为函数,但在该函数中,我无法调用其他函数。

应用/路由/ game.js

import Ember from 'ember';
export default Ember.Route.extend({

  model() {
    ...
  },

  saveGame: function () {
    this.save().then(() => {
      this.updateOtherGames(); //<------ ERROR ERROR ERROR ERROR
    })
  },

  updateOtherGames(game) {

  },

  actions: {
    playGame(game) {
      ...
      Ember.run.debounce(game, this.saveGame, 5000);
    }
  }
})

为什么我无法拨打updateOtherGames

为什么this函数中的saveGame仅指game而不是路由?

1 个答案:

答案 0 :(得分:1)

debounce的正确用法是:

Ember.run.debounce(this, this.saveGame, game, 5000);

这是the API

更正后,调用updateOtherGames即可。