SpreadJS 在 Angular2 中支持哪些事件?

SpreadJS 純前端表格控件是基於 HTML5 的 JavaScript 電子表格和網格功能控件,提供了完備的公式引擎、排序、過濾、輸入控件、數據可視化、Excel 導入/導出等功能,適用於 .NET、Java 和移動端等各平臺在線編輯類 Excel 功能的表格程序開發。前端


在上一篇文章中,咱們學習了SpreadJS 在 Angular2 中支持綁定的屬性,今天咱們來介紹 SpreadJS 在 Angular2 中支持哪些事件。angular2


首先 Angular2 綁定事件的方法是在 template 中使用"( )"設置綁定事件,而後在導出模塊中編寫事件觸發的方法,像這樣:app

@Component({
    selector: 'my-app',
    template: 
      `<gc-spread-sheets (workbookInitialized)= "workbookInit($event)" >
    </gc-spread-sheets>`,
})

export class AppComponent { 
    workbookInit (args) {
            //do something    }
}

其中 $event 爲 Angular2 的關鍵字,相似於 window.event,SpreadJS 對 $event 作了一些擴展,若是須要在事件中對 SpreadJS 相關的處理,那麼能夠傳入 $event 來獲取事件觸發的默認參數,例如:ide

workbookInitialized 事件中傳入 $event 參數後,在能夠經過 args.spread 獲取 spread 的實例對象。這裏對workbookInitialized事件作一個說明,workbookInitialized中能夠經過 args.spread 獲取 spread 對象,經過 spread 對象理論上咱們能夠在這裏作任何 SpreadJS 功能的事情,這裏的事情是不經過 Angular2 來進行處理的。這裏能夠作一些 Angular2 中不支持綁定的 SpreadJS 功能,例如:post

Angular2 支持的 SpreadJS 屬性中沒有篩選功能,那麼若是咱們要在 Angular2 的工程中實現一個列的篩選功能咱們應該怎麼作呢?以上面的代碼爲例,咱們能夠在 workbookInit 方法中使用:學習

var spread = args.spread;
var sheet = spread.getActiveSheet();
var columncount = sheet.getColumnCount();
var range = new GC.Spread.Sheets.Range(-1, 0, -1, columncount );
var rowFilter = new GC.Spread.Sheets.Filter.HideRowFilter(range);
sheet.rowFilter(rowFilter);

這樣就完成了在列上面增長綁定的功能。spa

詳細的事件說明,請參考博客對象

須要注意的是,全部的事件都是綁定在 gc-spread-sheets 標籤上的,綁定在其餘標籤上是無效的。blog

以上就是如何用 Angular2 構建 SpreadJS 項目的所有內容,相信你們經過第一篇的基礎搭建,再參考第二遍的屬性與第三篇的事件文檔後,已經能夠輕鬆的在 Angular2 的項目中使用 SpreadJS 了。排序

SpreadJS V10.2 版本即將發佈,更多更好的功能盡在新版本中,敬請期待!

登陸 SpreadJS 官網,瞭解更多。

相關文章
相關標籤/搜索