ag-Grid
https://github.com/ag-grid/ag-grid
ag-Grid web
https://www.ag-grid.com/
ag-Grid demo
https://www.ag-grid.com/example.php#/
企業級 JavaScript 資料網格 ag-Grid
https://www.oschina.net/p/ag-grid
ag-Grid是一個企業級的Javascript資料網格,提供開發者可用於構建企業級的應用,例如報告和資料分析,業務流程和資料登錄的一個資料表格。ag-Grid的性能非常好,它可以處理大量複雜資料,並提供先進的過濾和搜索,且提供了開箱即用的CRUD操作,如果需要創建自己的編輯器,可以通過使用您喜歡的框架來進行編輯文檔,並創建自己的編輯器。ag-Grid還可以根據您的業務情況,以不同的方式更新網格中的資料,因此您的更新總是能立即推送到您的用戶端口。
以下為官方vue版
Get Started with ag-Grid in Your Vue Project
https://www.ag-grid.com/vue-getting-started/
以下為單html檔測試範例,其內vue組件為自己封裝︰
載入後畫面為︰
#ag-Grid, Javascript, table, grid, CRUD, vue
https://github.com/ag-grid/ag-grid
ag-Grid web
https://www.ag-grid.com/
ag-Grid demo
https://www.ag-grid.com/example.php#/
企業級 JavaScript 資料網格 ag-Grid
https://www.oschina.net/p/ag-grid
以下為官方vue版
Get Started with ag-Grid in Your Vue Project
https://www.ag-grid.com/vue-getting-started/
以下為單html檔測試範例,其內vue組件為自己封裝︰
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> <title>ag-Grid Vue Demo</title> <!--使用vue--> <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.6.9/vue.min.js"></script> <!--使用ag-grid--> <link rel="stylesheet" href="https://unpkg.com/ag-grid-community/dist/styles/ag-grid.css"> <link rel="stylesheet" href="https://unpkg.com/ag-grid-community/dist/styles/ag-theme-balham.css"> <script src="https://unpkg.com/ag-grid-community/dist/ag-grid-community.min.noStyle.js"></script> </head> <body> <div id="app"> <vueagg v-bind:s="s"></vueagg> </div> <pre id="dd"></pre> <script> console.log = function (c, v) { //覆蓋log, 使用JSON.stringify輸出至網頁 document.querySelector('#dd').innerHTML = c + ': ' + JSON.stringify(v, null, 4); } //掛載ag-Grid Vue組件 let opt = { template: '<div id="dagg" class="ag-theme-balham"></div>', props: { s: { type: Object } }, data: function () { return { columnDefs: [], rowData: [], agg: null }; }, mounted: function () { let vo = this; //ele let ele = document.querySelector('#dagg'); //optag let optag = { columnDefs: vo.s.columnDefs, //rowSelection: 'multiple', enableRangeSelection: true, rowData: vo.s.rowData, onCellValueChanged: function () { console.log('onCellValueChanged', vo.s.rowData) }, }; //agg let agg = new agGrid.Grid(ele, optag); //save vo.agg = agg; }, beforeDestroy: function () { let vo = this; //destroy vo.agg.destroy(); }, computed: { }, methods: { }, } Vue.component('vueagg', opt) new Vue({ el: '#app', data: { s: { columnDefs: [ { headerName: "Make", field: "make", sortable: true, filter: true, editable: true }, //, checkboxSelection: true { headerName: "Model", field: "model", sortable: true, filter: true, editable: true }, { headerName: "Price", field: "price", sortable: true, filter: true, editable: true }, { headerName: "Dresp", field: "dsp", sortable: true, filter: true, editable: true }, ], rowData: [ { make: "Toyota", model: "Celica", price: 35000, dsp: '12jil3' }, { make: "Ford", model: "Mondeo", price: 32000, dsp: 'xzh8us' }, { make: "Porsche", model: "Boxter", price: 72000, dsp: '599uslduf' } ], } }, }) </script> </body> </html>
載入後畫面為︰
#ag-Grid, Javascript, table, grid, CRUD, vue
留言
張貼留言