Git Product home page Git Product logo

quasar-qgrid's Introduction

Hello 🙏🏽

I'm a Full-Stack developer from India 🇮🇳


🏆 Github Profile Trophy

quasar-qgrid's People

Contributors

dependabot[bot] avatar ezegmnz avatar pratik227 avatar pratikpatel-aurochs avatar zsgsdesign avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quasar-qgrid's Issues

Component not working in Vite

Hi, im trying to use component in Vite by using:
import { Component as QGrid } from 'quasar-ui-qgrid'

but im getting console error
The requested module '/node_modules/.vite/deps/quasar-ui-qgrid.js?t=1659087973036&v=7c418584' does not provide an export named 'Component'

If i try to import like:
import QGrid from 'quasar-ui-qgrid'

Im getting console error
Cannot set properties of undefined (setting 'moment')

Any suggestions how to get this to work?

loading prop

Hello,

Thank you for your plugin. It's very complete.

I have a question :
Is there a way to use the loading prop like quasar table ?

Br,

Support all native q-table props

This component is a customization of q-table, but it does not support all of the props of q-table, such as pagination. It does have it in the documentation that pagination can be a prop you can set in q-grid, but it does not work when setting it (tried both pagination and pagination.sync with no success, and the code in src/components/QGrid.vue does not show that it is available). Same with the loading prop. It would be great to use all native features of q-table in addition to the great functionality you have added on top of it.

Dragged rows issue with reactive data

Hi,

I'm using your extension's draggable rows feature and I came across a few issues. The feature does not seem to be working with reactive arrays (ref and reactive), and the list behavior seems unpredictable. I tried bypassing this issue by handling order change manually, but the data in @dragged_row event is incorrectly identifying dragged row.

I created a demo example, with data from the documentation. My only addition is the display of dragged_row and the order of data after each drag event.

stackblitz demo example

Ideally, it would be great if the feature worked correctly with ref arrays and there was no need to manually modify data.

Selected array on multi selection not working

Hello,

First, thanks for your work,
Im testing the component with multi selection and it seems the selected array is not working. It is always empty
Here the simple exemple i use : selected ref is always empty

<template>
  <q-grid :data="data" :columns="columns" :columns_filter="true" :draggable="true" selection="multiple"
          :csv_download="true" file_name="sample" :groupby_filter="true"
          :selected="selected"
          @selected-val="GetSelected($event)"></q-grid>

  <div class="q-mt-md">
    Selected: {{ JSON.stringify(selected) }}
  </div>


</template>

**....**

export default defineComponent({
  name: "GroupingComponent",
  setup() {
    return {
      columns,
      data,
      selected:ref([]),
      GetSelected(Selected) {
        console.log(Selected)
        console.log(this.selected)
      }
    }
  }
})
</script>

Vue-3 issues

Hello. very nice work.
There are some issues with vue3 and using some deprecated functions.
I attach it hereL
23:28 error '.native' modifier on 'v-on' directive is deprecated

                   vue/no-deprecated-v-on-native-modifier

152:21 error slot attributes are deprecated

                   vue/no-deprecated-slot-attribute

152:35 error slot-scope are deprecated

                   vue/no-deprecated-slot-scope-attribute

154:39 error The 'props.cols' expression inside 'v-for' directive should be replaced with a computed property that returns filtered array instead. You should not mix 'v-for' with 'v-if' vue/no-use-v-if-with-v-for
159:25 error slot attributes are deprecated

                   vue/no-deprecated-slot-attribute

159:37 error slot-scope are deprecated

                   vue/no-deprecated-slot-scope-attribute

161:41 error The 'props.cols' expression inside 'v-for' directive should be replaced with a computed property that returns filtered array instead. You should not mix 'v-for' with 'v-if' vue/no-use-v-if-with-v-for
334:17 error Unexpected side effect in "getFilteredValuesData" computed property
vue/no-side-effects-in-computed-properties
357:21 error Unexpected side effect in "getFilteredValuesData" computed property
vue/no-side-effects-in-computed-properties
363:29 error The $scopedSlots is deprecated

                   vue/no-deprecated-dollar-scopedslots-api

363:42 error Do not access Object.prototype method 'hasOwnProperty' from target object
no-prototype-builtins
399:26 error Do not access Object.prototype method 'hasOwnProperty' from target object
no-prototype-builtins
Regards

Slots available

Which slots are available from q-table?

I'm trying to use for instance v-slot:header and it's not working. The only one that seems to be working is the body slot.

Column filtering per specific columns

Hi trying to have column filtering in specific columns, not in all the columns and can't work it out.
Is it possible to active column filtering just for specific columns and not all at once?
Thanks is advance!

cannot filter when passing string from a parent component.

I am using a separate input field for adding a filter to my QGrid table. The problem is, I am sending the filter prop to QGrid, but nothing happens. I checked the source code and it doesn't accept filter as a Prop. Can we have a functionality similar to the QTable component where a filter value can be passed as a prop?

  <div class="q-pa-md">
    <q-table
      ref="tableRef"
      title="Treats"
      :rows="rows"
      :columns="columns"
      row-key="id"
      v-model:pagination="pagination"
      :loading="loading"
      :filter="filter"
      binary-state-sort
      @request="onRequest"
    >
      <template v-slot:top-right>
        <q-input borderless dense debounce="300" v-model="filter" placeholder="Search">
          <template v-slot:append>
            <q-icon name="search" />
          </template>
        </q-input>
      </template>

    </q-table>
  </div>
</template>

Q-grid freezing all app when loading 100.000+ rows

Hi, just started using your component because it seemed good for per column filtering, but in my case i'm working with data that can easily reach over 60.000+ rows.
I'm wondering why it takes over 30+ seconds to load data into the table.

Select column filter not updating with new data

Hello,

It's seems the column select filter values are not updating when the data change.

I pull the data from a backend so it's not know at the load time and It can change depending of the search.

To resolv this, I have created a method which refresh this.

` getColumnOptions(column) {
let column_option_simple = [...new Set(this.data.map(item => item[column]))];

          let column_option = []

          for ( let col of column_option_simple) {
              column_option.push({'label' : col.toString(), 'value': col.toString().toLowerCase().replace(/_/g, '_')})
          }

          return column_option
        }`

And I call it in the template :

<q-select v-if="col.hasOwnProperty('filter_type') && col.filter_type=='select'" map-options multiple emit-value filled v-model="column_options_selected[col.field]" :options="getColumnOptions(col.field)" dense>

I don't know if it's the best way but It seem's to run good

Pagination doesn't work properly

How can I set a different rowsPerPage in pagination?
If I set a variable
mypagination: {
rowsPerPage : 10
}

I see 10 rows per page but pagination doesn't work anymore (I can't switch to second, third, ecc... pages)

QGrid issues with filter and grouping

Hi,

First, thanks for your work on QGrid extension, it is very appreciate.

There are severals issues detected when i have tested:

  • grouping don't work when you want to customize slots
  • header filter don't work when you want to customize slots
  • filter with selected options don't work when you want to customize slots (for example, i have replaced value true/false by a checkbox)

Thanks in advance.

Best regards.

Throws run time error- filter is undefined on the page where qgrid is used.

After installing the extension and adding q-grid the page stops loading and the browser console shows the error
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'filter')
at Proxy.setColumnsDefinition (QGrid.vue:217:17)
at Proxy.created (QGrid.vue:169:10)
at callWithErrorHandling (chunk-UDHLJWFM.js?v=c44ac796:1727:32)
at callWithAsyncErrorHandling (chunk-UDHLJWFM.js?v=c44ac796:1735:17)
at callWithAsyncErrorHandling (chunk-UDHLJWFM.js?v=c44ac796:1745:17)
at callHook (chunk-UDHLJWFM.js?v=c44ac796:4358:3)
at applyOptions (chunk-UDHLJWFM.js?v=c44ac796:4277:5)
at finishComponentSetup (chunk-UDHLJWFM.js?v=c44ac796:7776:7)
at handleSetupResult (chunk-UDHLJWFM.js?v=c44ac796:7730:3)
at setupStatefulComponent (chunk-UDHLJWFM.js?v=c44ac796:7699:7)

this is the q-grid definition
<q-grid
:rows="portfolioScoreCards"
:columns="columns"
row-key="key"
:columns_filter="true"
table-class="mytable"
table-header-class="header"

   rows-per-page-label="records/page"
  icon-first-page="mdi-home"
  icon-last-page="mdi-all-inclusive"
  icon-next-page="mdi-arrow-right"
  icon-prev-page="mdi-arrow-left"
  no-data-label="I can't find any data 😞"
    :loading="true"
  loading-label="Loading Portfolio Scorecards!"
  :global_search="true"
  :visible-columns="[
    'model', 'assetGroup', 'riskLevel', 'region', 'alpha', 'beta', 'ir', 'lpr',
    'm2', 'roi', 'risk', 'sor', 'std', 'cagr', 'maxdd', 'sharpe', 'var1', 'var2'
  ]"

  :pagination-label="(firstRowIndex, endRowIndex, totalRowsNumber) => {
    return `page ${endRowIndex}/${totalRowsNumber}`
  }"
@request="handleSort"

/>
I am on quasar , vite, vue 3 latest repo.

filter type select failed

When the value has null, and the column filter type is defined as select, it will fail:

Uncaught (in promise) TypeError: Cannot read properties of null (reading 'toString')
at QGrid.vue:520:28
at Array.filter ()
at Proxy.getColumnOptions (QGrid.vue:520:28)
at QGrid.vue:101:61
at renderFnWithContext (runtime-core.esm-bundler.js:868:19)
at hSlot (quasar.esm.js:2034:7)
at Proxy. (quasar.esm.js:31583:12)
at renderComponentRoot (runtime-core.esm-bundler.js:914:44)
at ReactiveEffect.componentUpdateFn [as fn] (runtime-core.esm-bundler.js:5720:34)
at ReactiveEffect.run (reactivity.esm-bundler.js:190:25)

Visible Columns

Hi Pratik,I want to learn that can we use visible columns here like qtable?

Filter data

Hi!
with more than a thousand items, filter in q-grid table doesn't work properly.
It shows first item correct but then add in the list other items (that are not correct)..
It's a known issue?

Thanks!!

Customize column

Hello Pratik,

Im trying to customize only one particular column with body slot,
but with this i need to redefine others columns also, including checkbox on the first columns with his behaviour that is problematic.
How can i do ?

image

Is there a way of using v-for with v-slot:body

I tried using

<q-grid :data="data" :columns="columns" :columns_filter="true">
     <template v-slot:body="props">
        <q-tr :props="props">
          <q-td
            v-for="col in props.cols"
            :key="col.name"
            :props="props"
          >
            {{ col.value }}
          </q-td>
        </q-tr>
      </template>
</q-grid>

I got nothing apparently
Is there a way of doing it instead of the one in the demo

<q-grid :data="data" :columns="columns" :columns_filter="true" :draggable="true">
        <template v-slot:body="props">
          <q-tr :props="props">
            <q-td key="name">
              {{ props.row.name }}
            </q-td>
.....

Sorry for opening a ticket

Add more components to the repo

Hi is it possible to add more components to the repo? I tried adding one more component in this path /ui/src/components/ and tried to use that inside dev/src/pages , but the newly created component is not rendered and getting this warning on console.

  at <Test1 onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< null > > 
  at <RouterView> 
  at <QPageContainer> 
  at <QLayout view="lHh Lpr lFf" > 
  at <MyLayout onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< Proxy {…} > > 
  at <RouterView> 
  at <App>

Unable to install

This extension looks awesome, but I cannot get it to install. The quasar ext add qgrid command seems to work, but when trying to use the extension, it doesn't identify it and none of the code examples work. I understand that it is a WIP, should it be working?

Quasar old version

Hello.
I got this error when try to install extension

 "Extension(qgrid): is not compatible with quasar v1
.12.3. Required version: ^2.0.0-beta.12"

I dont want upgrade my Quasar version.so How can i use this extension for Q v1?

Filters doesn't work with api req

Hi! I've a table showing diferents values and it does but when I try to filter, it doest work.

Thats my q-grid at template:

<q-grid
      :data="rows"
      :columns="columns"
      :columns_filter="true"
      :draggable="true"
      selection="multiple"
      :selected="selected"
      row_key="name"
      @selected-val="GetSelected($event)"
    >
      <template v-slot:body="props">
        <q-tr :props="props">
          <q-td>
            <q-checkbox
              color="primary"
              v-model="selected"
              :val="props.row"
              @update:model-value="sendToSelected(props.row.id)"
            />
          </q-td>
          <q-td key="id">
            {{ props.row.id }}
          </q-td>
          <q-td key="owner">
            {{ props.row.owner }}
          </q-td>
          <q-td key="lotNumber">
            {{ props.row.lotNumber }}
          </q-td>
          <q-td key="productId">
            {{ props.row.productId }}
          </q-td>
          <q-td>
            <q-btn
              icon="message"
              flat
              color="accent"
              @click="dataAndShow(props.row)"
            />
          </q-td>
        </q-tr>
      </template>
    </q-grid>

The columns and rows in setup():

    const columns = [
      {
        name: "id",
        required: true,
        label: "idHeader",
        field: (row) => row.id,
        align: "center",
        sortable: true,
      },
      {
        name: "owner",
        required: true,
        label: "owner",
        align: "center",
        field: (row) => row.owner,
        format: (val) => `${val}`,
        sortable: true,
      },
      {
        name: "lotNumber",
        required: true,
        label: "lotNumber",
        align: "center",
        field: (row) => row.lotNumber,
        format: (val) => `${val}`,
        sortable: true,
      },
      {
        name: "productId",
        required: true,
        label: "productId",
        align: "center",
        field: (row) => row.productId,
        format: (val) => `${val}`,
        sortable: true,
      },
    ];
    const rows = ref([]);

and the api request only push the differents values into array:

 rows.value.push({
              id: element.attrs[0].value
                .toString()
                .substr(0, element.attrs[0].value.indexOf("#")),
              owner: element.attrs[1].value.toString(),
              lotNumber: element.attrs[2].value.toString(),
              productId: element.attrs[3].value.toString(),
              sellable: element.attrs[4].value.toString(),
              claimed: element.attrs[5].value.toString(),
            });

I'venn trying diferents methods, and i thought that probably was the lifecycle of vue3, then i tryed to fetch the api at setup(), and also on a onMounted() method, but it doesn't work?

Option to disable draggable for specific rows

Hi,

maybe I am overlooking this option, but I couldn't figure it out on my own.

Is it somehow possible (via class selector e.g.) to disable draggable for a row/column (while keeping it for the others)?

Thanks a lot for you great work!

How to display object in grid

Lets say you get the following object back from the api call:

      {
          "_id": "12132",
          "externalcode": "1",
          "name": "Doe",
          "address": {
              "street": "Lorem",
              "zipcode": "123",
              "city": "Lorem",
          },
}

How can i display the address object in the grid?

I tried just doing this:

const columns = [
  {
    name: 'city',
    required: true,
    label: 'city',
    field: 'address.city',
    sortable: true,
  },
];

But than the city column stays empty. Even with a formatter.

How can I use this in quasar 2.0.1?

Hi, I added this extension to my app.
But it is not working.
App · ⚠️ Extension(qgrid): is not compatible with @quasar/app v2.0.1. Required version: ^1.4.3
How can I handle this problem?

Server side

How could server side be implemented?
QTables has server side but does not allow filtering by multiple columns

Filter

Hello, this is a great job. It is possible, just as the example of the filter by date range is done, it makes a filter by a numerical field bounded between two values.

Thank you

Issue on Filtering when one of the cell within the row is null

Environment: Google Chrome

Copied from the console

TypeError: Cannot read property 'toString' of null
    at eval (QGrid.vue?a3f7:320)
    at Array.filter (<anonymous>)
    at VueComponent.getFilteredData (QGrid.vue?a3f7:314)
    at Watcher.get (vue.runtime.esm.js?5593:4479)
    at Watcher.evaluate (vue.runtime.esm.js?5593:4584)
    at VueComponent.computedGetter [as getFilteredData] (vue.runtime.esm.js?5593:4836)
    at VueComponent.getFilteredValuesData (QGrid.vue?a3f7:333)
    at Watcher.get (vue.runtime.esm.js?5593:4479)
    at Watcher.evaluate (vue.runtime.esm.js?5593:4584)
    at VueComponent.computedGetter [as getFilteredValuesData] (vue.runtime.esm.js?5593:4836)

How to add a header filter for a field, which is an array

Hi,

I have records for members, where I have a field, which is an array of tags, e.g., ['coach','player'].
Somethings like this:

columns: [
    { name: "name", label: "name", field: "name" },
    { name: "function", label: "function", field: "function" }
]

Now, I have 2 problems:

  • How can I add a filter of type 'select' for the function-field?
  • How can I format the function-field to show as: function.join(', ')? (I can do it with a body-prop, but then I don't know what to add for the select-column as my table is selection="multiple"

Other than that, it has been great. Much easier than usin QTable directly

Issue Installing

I have had issues adding this app extension to my quasar projects. I have tried following both the app extension method and adding to my boot order. When I add it to a brand new project I am prompted to install @quasar/app, but after i install the missing package quasar is no longer able to recognize that it is a valid Quasar project. I was able to get the demo project to run, but cant get it to work properly. I have test this on several computers running node 14 and node 16

Here is the output from the installation process

√ What would you like to build? » App with Quasar CLI, let's go!
√ Project folder: ... quasar-project
√ Pick Quasar version: » Quasar v2 (Vue 3 | latest and greatest)
√ Pick script type: » Typescript
√ Pick Quasar App CLI variant: » Quasar App CLI with Vite (BETA stage)
√ Package name: ... quasar-project
√ Project product name: (must start with letter if building mobile apps) ... Quasar App
√ Project description: ... A Quasar Project
√ Author: ... Thomas <[email protected]>
√ Pick a Vue component style: » Composition API
√ Pick your CSS preprocessor: » Sass with SCSS syntax
√ Check the features needed for your project: » ESLint
√ Pick an ESLint preset: » Prettier

 Quasar • Generating files...

 - index.html
 - postcss.config.js
 - quasar.config.js
 - README.md
 - .editorconfig
 - .gitignore
 - package.json
 - tsconfig.json
 - public/favicon.ico
 - src/App.vue
 - src/env.d.ts
 - src/quasar.d.ts
 - src/shims-vue.d.ts
 - .vscode/extensions.json
 - .vscode/settings.json
 - public/icons/favicon-128x128.png
 - public/icons/favicon-16x16.png
 - public/icons/favicon-32x32.png
 - public/icons/favicon-96x96.png
 - src/assets/quasar-logo-vertical.svg
 - src/boot/.gitkeep
 - src/components/EssentialLink.vue
 - src/components/ExampleComponent.vue
 - src/components/models.ts
 - src/layouts/MainLayout.vue
 - src/pages/ErrorNotFound.vue
 - src/pages/IndexPage.vue
 - src/router/index.ts
 - src/router/routes.ts
 - src/css/app.scss
 - src/css/quasar.variables.scss
 - .eslintignore
 - .eslintrc.js
 - .prettierrc

 Quasar •  SUCCESS  • The project has been scaffolded
 App • Running "qgrid" Quasar App Extension...

 App • ⚠️  Extension(qgrid): Dependency not found - @quasar/app. Please install it.
❯ npm i @quasar/app

added 520 packages, and audited 921 packages in 25s

136 packages are looking for funding
  run `npm fund` for details

5 vulnerabilities (3 high, 2 critical)

To address all issues, run:
  npm audit fix

Run `npm audit` for details.
❯ quasar dev

 App • ⚠️  Error. This command must be executed inside a Quasar v1+ project folder.

qgrid style

Hi,

I've installed the QGrid extension and copy and pasted just the q-grid component into my application:

<q-grid :data="data" :columns="columns" :columns_filter="true"></q-grid>

along with sample data provided in the demo.

The grid doesn't display quite right. Maybe a style issue? The filter inputs are stacked on each other and the grid data itself is not displaying as a grid:

image

Here's my packake.json file:

 "dependencies": {
    "@quasar/extras": "^1.8.1",
    "axios": "^0.19.0",
    "git-branch": "^2.0.1",
    "global": "^4.4.0",
    "quasar": "^1.12.1",
    "shipit-nvm": "^0.0.6",
    "shipit-shared": "^4.4.2"
  },
  "devDependencies": {
    "@quasar/app": "^1.2.4",
    "@quasar/quasar-app-extension-icon-genie": "^1.1.2",
    "@quasar/quasar-app-extension-qenv": "^1.0.0-beta.2",
    "babel-eslint": "^10.0.2",
    "cypress": "^4.0.1",
    "eslint": "^6.1.0",
    "eslint-config-standard": "^13.0.1",
    "eslint-loader": "^2.2.1",
    "eslint-plugin-cypress": "^2.6.1",
    "eslint-plugin-import": "^2.18.2",
    "eslint-plugin-node": "^9.1.0",
    "eslint-plugin-promise": "^4.2.1",
    "eslint-plugin-standard": "^4.0.0",
    "eslint-plugin-vue": "^5.2.3",
    "node-sass": "^4.12.0",
    "quasar-app-extension-qgrid": "^0.0.2",
    "sass-loader": "^7.1.0",
    "shipit-cli": "^5.0.0",
    "shipit-deploy": "^5.0.0"
  },
  "engines": {
    "node": ">= 10.20.1",
    "npm": ">= 6.14.15",
    "yarn": ">= 1.22.4"
  },

And source/template:

<template>
  <q-page padding>
    <q-grid :data="data" :columns="columns" :columns_filter="true"></q-grid>
  </q-page>
</template>

<script>
  export default {
    data() {
      return {
        columns: [
          {
            name: 'name',
            required: true,
            label: 'Dessert (100g serving)',
            align: 'left',
            field: 'name',
            sortable: true
          },
          {name: 'calories', align: 'center', label: 'Calories', field: 'calories', sortable: true},
          {name: 'fat', label: 'Fat (g)', field: 'fat', sortable: true},
          {name: 'carbs', label: 'Carbs (g)', field: 'carbs'},
          {name: 'protein', label: 'Protein (g)', field: 'protein'},
          {name: 'sodium', label: 'Sodium (mg)', field: 'sodium'},
          {
            name: 'calcium',
            label: 'Calcium (%)',
            field: 'calcium',
            sortable: true,
            sort: (a, b) => parseInt(a, 10) - parseInt(b, 10)
          },
          {
            name: 'iron',
            label: 'Iron (%)',
            field: 'iron',
            sortable: true,
            sort: (a, b) => parseInt(a, 10) - parseInt(b, 10)
          }
        ],
        data: [
          {
            name: 'Frozen Yogurt',
            calories: 159,
            fat: 6.0,
            carbs: 24,
            protein: 4.0,
            sodium: 87,
            calcium: '14%',
            iron: '1%'
          },
          {
            name: 'Ice cream sandwich',
            calories: 237,
            fat: 9.0,
            carbs: 37,
            protein: 4.3,
            sodium: 129,
            calcium: '8%',
            iron: '1%'
          },
          {
            name: 'Eclair',
            calories: 262,
            fat: 16.0,
            carbs: 23,
            protein: 6.0,
            sodium: 337,
            calcium: '6%',
            iron: '7%'
          },
          {
            name: 'Cupcake',
            calories: 305,
            fat: 3.7,
            carbs: 67,
            protein: 4.3,
            sodium: 413,
            calcium: '3%',
            iron: '8%'
          },
          {
            name: 'Gingerbread',
            calories: 356,
            fat: 16.0,
            carbs: 49,
            protein: 3.9,
            sodium: 327,
            calcium: '7%',
            iron: '16%'
          },
          {
            name: 'Jelly bean',
            calories: 375,
            fat: 0.0,
            carbs: 94,
            protein: 0.0,
            sodium: 50,
            calcium: '0%',
            iron: '0%'
          },
          {
            name: 'Lollipop',
            calories: 392,
            fat: 0.2,
            carbs: 98,
            protein: 0,
            sodium: 38,
            calcium: '0%',
            iron: '2%'
          },
          {
            name: 'Honeycomb',
            calories: 408,
            fat: 3.2,
            carbs: 87,
            protein: 6.5,
            sodium: 562,
            calcium: '0%',
            iron: '45%'
          },
          {
            name: 'Donut',
            calories: 452,
            fat: 25.0,
            carbs: 51,
            protein: 4.9,
            sodium: 326,
            calcium: '2%',
            iron: '22%'
          },
          {
            name: 'KitKat',
            calories: 518,
            fat: 26.0,
            carbs: 65,
            protein: 7,
            sodium: 54,
            calcium: '12%',
            iron: '6%'
          }
        ]
      }
    }
  };
</script>

I do have the standard quasar grid successfully working on another page:

image

Any help is greatly appreciated. Thanks!

Date range filter

Hi Pratik, thank you so much for this extension.

Do you have provide a function for date range filter? I don't find any date range filters on your demos, but I will try to create one.

Thanks again.

Select Column Filter

Hi Pratik, thank you so much for this extension.

i have proplem with Select column filter.This box shows values sometimes but sometimes not show anythhing even with same data and same datatable.Other filters work but only this have problem

Custom selected row not working

Hi

it doesn't select when i add checkbox as below

<q-grid
                :row_key="'Id'"
                :data="rows"
                :columns="columns"
                :columns_filter="true"
                `selection="multiple"`
                :selected="selected"
                @selected-val="GetSelected($event)"
              >                
                <template v-slot:body="props">
                  <q-tr :props="props">
                    <q-td>
                      <q-checkbox color="secondary" v-model="props.selected" />
                    </q-td>
                   ...
                  </q-tr></template
                >
              </q-grid>


const columns = [
  { name: "durum",label: "Durum",field: "DurumAciklama",sortable: true,align: "left",filter_type: "select",},
  { name: "cari",label: "Cari Adı",field: "CariAd",sortable: true,align: "left",required: true,},
  { name: "islem",label: "Link Tip",field: "TipAciklama",sortable: true,align: "left",},
  { name: "tarih",label: "Tarih",align: "left",field: "Tarih",sortable: true,filter_type: "date",},
  { name: "belgeNo",label: "Belge No",field: "BelgeNo",sortable: true,align: "left",},
  { name: "link", label: "Link", field: "Link", sortable: true, align: "left" },
];

setup() {
...
const GetSelected = (s) => {
      selected.value = s
    };

 return {      
      selected: ref([]),
      GetSelected
      ...    
    }},;

resim
resim

vue-cli

Hey im working on vue cli and added quasar in my project so is there any way to use quasar extension with vue cli ?

Quasar 2 compatibility

I was installled qgrid in quasar 2 and used normally, the result is:
Failed to resolve component: q-grid at <BuscarExpediente onVnodeUnmounted=fn ref=Ref< undefined > >

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.