2014-10-29 226 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