2014-10-29 225 views
0

我注意到,倾听/观察附着ractive实例功能既不内RactiveJS观察员和听众:错误不抛出

ractive.on('event', someListener); 
ractive.observe('keypath.to.data.property', someListener); 

不抛出错误(当他们应该)。我做错了什么,还是仅仅是在Ractive核心中使用类似eval-like构造函数的缺点?

错误调试是这么辛苦在这种情况下...

编辑:只有当观察者的oncomplete函数内部注册时我已经写了这个问题。

var ractive = new Ractive({ 
    el: '#container', 
    template: 'a: <input value="{{a}}"><br>b: <input value="{{b}}">', 
    data: { 
     a: 'alpha', 
     b: 'beta' 
    }, 
    oncomplete: function(){ 
     this.observe('a', function(val){ 
      alert('@oncomplete ' + val + missingVar_oncomplete); 
     }, { init: false });  
    } 
}); 

测试用例:http://jsfiddle.net/Lqgoacvz/

+0

在Ractive中看起来像一个问题。调查... – martypdx 2014-10-29 12:41:54

回答

0

IssuePR已作出处理oncomplete错误没有显示在控制台上的。

由于问题源自异步调用oncomplete,因此您也可以将观察者和事件处理程序移至较早的生命周期事件。如果有DOM访问权限,他们可以早于oninitonrender。很明显,如果发布DOM转换原因,他们需要留在oncomplete