2016-05-13 41 views
0

我正试图在我们的应用程序上工作。这适用于本地测试应用程序,以及twiddle示例,但不是我正在使用的那个。 https://ember-twiddle.com/6470734cd3111fd3049f3e900aa676c4?numColumns=2&openFiles=controllers.application.js%2Ctemplates.application.hbsEmber run.debounce不能正常工作

import Ember from 'ember'; 

export default Ember.Controller.extend({ 
    appName: "Debounce", 
    it: false, 
    actions: { 
     changeIt() { 
      this.toggleProperty('it'); 
     } 
    }, 
    logIt() { 
    console.log('logging it'); 
    console.log(this.get('it')); 
    }, 
    observeIt: Ember.observer('it', function() { 
    console.log('will debounce'); 
    Ember.run.debounce(this, 'logIt', 5000, false); 
    }), 

}); 

的问题是,“Logit模型”总是立即开除,并会不断没有延迟或节流射击。由于它在一个应用程序而不是另一个应用程序中运行,有可能是一个插件搞乱了它?我无能为力。

使用灰烬版本2.4.3

+0

这是不是在你的应用程序使用的代码?如果是这样,你使用哪个版本的Ember? – Kingpin2k

+0

也许试着指定'immediate'参数? 'Ember.run.debounce(this,'logIt',5000,false);'这个应用程序还有什么ember版本? – Lux

+0

立即指定为false,但仍未按预期工作。 – Xeridea

回答

0
Ember.run.debounce(this, 'logIt', 5000, false); 

Ember.run.debounce(this, this.logIt, 5000, false); 
+0

这是如何解决问题的? – 2016-05-14 16:40:15

+0

@torazaburo - 'logIt'是一个字符串,而this.logIt是一个余烬对象。 –