2014-12-07 88 views
0

在以下情况下,videoEnded函数被成功调用,但是如何获得对它自己的实际Ember组件的引用?Ember发送从组件到上下文控制器的动作

export default Ember.Component.extend({ 
    videoEnded: function(){ 
     var self = this; 
     alert('how do i get a reference to the actual ember component object here ?') 
    } 

    didInsertElement: function() { 
     var self = this; 
     var options = {}; 
     self._soundjs = soundjs('soundOne', options, function(){ 
     }); 

     self._soundjs.on('ended',self.videoEnded); 
    } 

回答

1

以下解决了我的问题。 videEnded回调正在丢失组件上下文。下面的代码解决了这个问题,self传递给视频结束引用组件上下文,然后可以使用,发送动作到上下文控制器。

self._soundjs.on('ended',function() { self.videoEnded.apply(self, arguments); }); 

信用:@teddyzeenny

相关问题