[메모] Vue.js에서ag-grid 사용하기
참고 자료
[메모] Vue.js에서ag-grid 사용하기 (설정 값 제외) ※ 이 기사의 후속입니다
준비
"dependencies": {
"ag-grid-community": "^21.2.2",
"ag-grid-vue": "^21.2.2",
...
"vue": "^2.6.10",
...
.vue 파일로 하는 일
import {AgGridVue} from "ag-grid-vue";
export default {
components: {
AgGridVue,
}
<template>
<div>
<AgGridVue id="grid" class="ag-theme-blue"
:rowData="rowData"
:gridOptions="gridOptions">
</AgGridVue>
</div>
</template>
<template>
<div>
<AgGridVue id="grid" class="ag-theme-blue"
v-bind:rowData="rowData"
v-bind:gridOptions="gridOptions">
</AgGridVue>
</div>
</template>
data() {
...
return {
gridData : [],
gridOptions: { ... }
}
},
computed: {
rowData () {
return this.gridData;
}
},
gridOptions: {
// 列の定義
columnDefs:colDefs,
// 1行選択モード
rowSelection: 'single',
// 1行の高さ(タグ属性でも指定できるが、今回はオプションにした)
rowHeight : 32,
// ページング機能を有効にするかの設定。タグ属性では指定できない模様
pagination: true,
paginationAutoPageSize : true,
// EVENTS - add event callback handlers
// 行が選択されたイベント
onRowSelected(params) {
params.api.redrawRows(); // 選択されたとき行の色を変える
},
// 行のスタイルを返すコールバック
getRowStyle(params) {
// 選択行のスタイル
if (params.node.selected) {
return { background: 'white' };
} else { // 通常行のスタイル
return { background: '#f1e8e8' };
}
},
// グリッドの準備完了イベント
onGridReady(params) {
this.gridApi = params.api;
this.columnApi = params.columnApi;
// カラム幅を全体幅に合わせる.
// これを呼ばないとcolumnDefが反映されません。
this.gridApi.sizeColumnsToFit();
console.log('gridReady is called.');
},
},
const colDefs = [{
headerName: '#',
field: 'order',
maxWidth:50,
cellStyle: {textAlign: 'center'}
},{
headerName: '商品番号',
field: 'productCd',
maxWidth: 85,
cellStyle: {textAlign: 'left'}
},{
headerName: '商品名称',
field: 'name',
cellStyle: {textAlign: 'left'}
}];
실제 표시
이런 느낌이에요.
주의: 제목 부분의 텍스트가 센터로 정렬되어도 제목 텍스트가 중간에 있지 않습니다.
.ag-header-cell-text {
flex: 1; /* ヘッダのテキストの位置を変更するにはこれが超重要らしい */
}
Reference
이 문제에 관하여([메모] Vue.js에서ag-grid 사용하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/smatsu/items/ceb04e1f9d1cec0d2447텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)