标签: ag-grid-vue

Ag-Grid 重置新数据源上的滚动

我在 Ag-Grid 相关代码之外更新数据。我有一个变量 ,this.works它存储我的投资组合管理器项目的所有用户“投资组合”。我this.loadMore()从服务器加载了更多数据(我无权访问,这就是我从外部加载数据的原因)。

我正在采用“无限”行模型来实现无限滚动。我开始使用数据源是因为我也想使用排序和过滤。

问题是,当我更新数据源时,滚动会重置到顶部。这是非常烦人的行为。

使用 Ag-Grid 社区和 Vue.js。

GridOptions(在 beforeMount() 中设置)

  this.gridOptions = {
    suppressScrollOnNewData: true,
    rowSelection: 'single',
    rowModelType: 'infinite',
    deltaRowDataMode: true,
    defaultColDef: {
      sortable: false,
      resizable: true
    },
    columnTypes: {
      'imageColumn': {
        width: 150,
        sortable: false,
        autoHeight: true,
        cellRendererFramework: AgGridImageFormatter
      },
      'priceColumn': {
        cellRendererFramework: AgGridPriceFormatter
      }
    }
  };
Run Code Online (Sandbox Code Playgroud)

方法:

({
  methods: {
    onBodyScroll: function(event) {
      var lastDisplayedWork, ref, worksCount;
      worksCount = this.works.length;
      lastDisplayedWork = (ref = this.gridOptions.api) != null ? ref.getLastDisplayedRow() : void …
Run Code Online (Sandbox Code Playgroud)

javascript coffeescript vue.js ag-grid ag-grid-vue

5
推荐指数
1
解决办法
4168
查看次数

从 cellrenderer 调用父函数,例如在 vuejs ag-grid-vue 上发出

我已经在我的项目上实现了,ag-grid-vue现在我在其中一列上有一个单独的组件,基本上是Actions,现在用户可以根据选择编辑视图或删除,现在编辑和删除它工作得很好,问题是当我删除记录时,我希望通过从 Api 获取更新的数据来重新呈现表格,为此我需要从 CellRenderer 组件调用父级中的某些方法,让我向您展示代码

超文本标记语言

<ag-grid-vue
        ref="agGridTable"
        :components="components"
        :gridOptions="gridOptions"
        class="ag-theme-material w-100 my-4 ag-grid-table"
        :columnDefs="columnDefs"
        :defaultColDef="defaultColDef"
        :rowData="accounts"
        rowSelection="multiple"
        colResizeDefault="shift"
        :animateRows="true"
        :floatingFilter="true"
        :pagination="true"
        :paginationPageSize="paginationPageSize"
        :suppressPaginationPanel="true"
        :enableRtl="$vs.rtl">
      </ag-grid-vue>
Run Code Online (Sandbox Code Playgroud)

JS

import CellRendererActions from "./CellRendererActions.vue"

  components: {
    AgGridVue,
    vSelect,
    CellRendererActions,
  },

columnDefs: [
{
          headerName: 'Account ID',
          field: '0',
          filter: true,
          width: 225,
          pinned: 'left'
        },{
          headerName: 'Account Name',
          field: '1',
          width: 250,
          filter: true,
        },
         {
          headerName: 'Upcoming Renewal Date',
          field: '2',
          filter: true,
          width: 250,
        }, …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js ag-grid vuejs2 ag-grid-vue

4
推荐指数
1
解决办法
3584
查看次数

ag-grid-vue 不渲染表格

我正在尝试集成ag-grid到我现有的 vue.js 项目中。该表未正确呈现。我按照 ag-grid Here网站上的教程进行操作。

<template>
  <v-container>
    <v-row>
      <v-col cols="12" sm="3"></v-col>
      <v-col cols="12" sm="6">
        <ag-grid-vue
          class="ag-theme-alpine"
          :columnDefs="columnDefs"
          :rowData="rowData"
          :modules="modules"
        >
        </ag-grid-vue>
      </v-col>
      <v-col cols="12" sm="3"></v-col>
    </v-row>
  </v-container>
</template>
<script>
import { AgGridVue } from "@ag-grid-community/vue";
import { ClientSideRowModelModule } from "@ag-grid-community/client-side-row-model";
export default {
  name: "VueGridTest",
  data() {
    return {
      columnDefs: null,
      rowData: null,
      modules: [ClientSideRowModelModule],
    };
  },
  components: {
    AgGridVue,
  },
  beforeMount() {
    this.columnDefs = [
      { headerName: "Make", field: "make" },
      { headerName: "Model", …
Run Code Online (Sandbox Code Playgroud)

vue.js ag-grid ag-grid-vue

3
推荐指数
1
解决办法
1237
查看次数

标签 统计

ag-grid ×3

ag-grid-vue ×3

vue.js ×3

javascript ×2

coffeescript ×1

vuejs2 ×1