{"id":19357110,"url":"https://github.com/activewidgets/vue","last_synced_at":"2025-02-24T11:41:59.564Z","repository":{"id":29411649,"uuid":"121610225","full_name":"activewidgets/vue","owner":"activewidgets","description":"Virtualized Vue Data Grid","archived":false,"fork":false,"pushed_at":"2023-04-30T18:49:24.000Z","size":1276,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-26T05:43:07.142Z","etag":null,"topics":["data-grid","data-table","datagrid","datatable","grid","scrolling","table","virtual","virtualized","vue"],"latest_commit_sha":null,"homepage":"http://www.activewidgets.com/vue/data-grid/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/activewidgets.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-02-15T09:19:08.000Z","updated_at":"2022-11-07T21:52:10.000Z","dependencies_parsed_at":"2023-10-11T11:38:14.933Z","dependency_job_id":"6cd8ab46-29e7-46ea-a0e2-a91e30ce8fbc","html_url":"https://github.com/activewidgets/vue","commit_stats":{"total_commits":149,"total_committers":1,"mean_commits":149.0,"dds":0.0,"last_synced_commit":"b919f4b30b17867efddc5475aa0d5afb33378682"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activewidgets%2Fvue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activewidgets%2Fvue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activewidgets%2Fvue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/activewidgets%2Fvue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/activewidgets","download_url":"https://codeload.github.com/activewidgets/vue/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240473460,"owners_count":19807140,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data-grid","data-table","datagrid","datatable","grid","scrolling","table","virtual","virtualized","vue"],"created_at":"2024-11-10T07:06:21.160Z","updated_at":"2025-02-24T11:41:59.540Z","avatar_url":"https://github.com/activewidgets.png","language":"JavaScript","readme":"\n### \n\n# ActiveWidgets/Vue • Datagrid \n\n[![npm version](https://img.shields.io/npm/v/@activewidgets/vue)](https://www.npmjs.com/package/@activewidgets/vue \"View this project on npm\")\n[![npm downloads](https://img.shields.io/npm/dm/@activewidgets/vue)](https://www.npmjs.com/package/@activewidgets/vue \"npm package downloads/month\")\n[![Github issues](https://img.shields.io/github/issues/activewidgets/vue)](https://github.com/activewidgets/vue/issues \"See Github issues\")\n[![Github repo](https://img.shields.io/github/stars/activewidgets/vue?label=GitHub\u0026style=social)](https://github.com/activewidgets/vue \"Open Github repo\")\n\nActiveWidgets is a multi-framework UI component library. This package provides [virtualized datagrid component for Vue](https://activewidgets.com/vue/data-grid/).\n\n[Live demo](https://vue.activewidgets.com) / [Developer guide](https://activewidgets.com/guide/) / [API reference](https://activewidgets.com/api/)\n\n[![Datagrid demo](https://cdn.activewidgets.com/assets/screens/demo.png)](https://vue.activewidgets.com)\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [CDN links](#cdn-links)\n- [Data properties](#data-properties)\n- [User events](#user-events)\n\n## Installation\n\nAdd [@activewidgets/vue](https://activewidgets.com/api/packages/vue/) to your project dependencies -\n\n```sh\n\u003e npm i --save @activewidgets/vue\n```\n\n## Usage\n\nNow you can import ActiveWidgets component classes -\n\n```js\nimport { components } from \"@activewidgets/vue\";\n```\n\nand register them with Vue.\n\n```js\nimport {components} from '@activewidgets/vue';\n\n// ...\n\nexport default { components, data };\n```\n\nIt makes `ax-datagrid` and other `ax-...` tags available in your component template -\n\n```html\n\u003ctemplate\u003e\n    \u003cax-datagrid :rows=\"rows\"\u003e\u003c/ax-datagrid\u003e\n\u003c/template\u003e\n```\n[Live example](https://vue.activewidgets.com/examples/local/hello-world/) | [Source on github](https://github.com/activewidgets/vue/tree/master/examples/hello-world) | [Edit on stackblitz](https://stackblitz.com/github/activewidgets/vue/tree/master/examples/hello-world)\n\n## CDN links\n\nFor quick prototyping the package is also available over ActiveWidgets CDN -\n\n```html\n\u003cscript src=\"https://cdn.activewidgets.com/vue\"\u003e\u003c/script\u003e\n```\n\nIn this case you will find the components at `ActiveWidgets.Vue` global namespace.\n\n```js\nvar components = ActiveWidgets.Vue.components;\n\n// or\n\nvar Datagrid = ActiveWidgets.Vue.Datagrid;\n```\n\n## Data properties\n\nYou have to provide [columns](https://activewidgets.com/api/datagrid/columns/) and [rows](https://activewidgets.com/api/datagrid/rows/) properties to the datagrid to show some data. The properties of each `column` object define how the data will be rendered -\n\n- [field](https://activewidgets.com/api/datagrid/columns/#field) - where the cell data comes from (string|function)\n- [header](https://activewidgets.com/api/datagrid/columns/#header) - column header (string|object)\n- [width](https://activewidgets.com/api/datagrid/columns/#width) - column width (number, in pixels)\n- [align](https://activewidgets.com/api/datagrid/columns/#align) - cell text alignment (left|right|center)\n- [format](https://activewidgets.com/api/datagrid/columns/#format) - number/date format (string|function)\n- [fixed](https://activewidgets.com/api/datagrid/columns/#fixed) - fixed (true/false) for columns on the left or right side\n\nThe `style` (string|object) or `className` properties allow to change the styling of the column and cell elements.\n\n```js\nfunction data(){\n\n    const columns = [\n      {header: 'Code', field: 'customerID', style: 'background:#def', fixed: true},\n      {header: 'Company Name', field: 'companyName', width: 160},\n      {header: 'Contact', field: 'contactName', width: 120},\n      {header: 'Title', field: 'contactTitle', width: 120},\n      {header: 'Address', field: 'address', width: 120, align: right}\n    ];\n\n    const rows = northwind.customers;\n\n    return { columns, rows };\n}\n```\n\n```html\n\u003ctemplate\u003e\n    \u003cax-datagrid :columns=\"columns\" :rows=\"rows\"\u003e\u003c/ax-datagrid\u003e\n\u003c/template\u003e\n```\n[Live example](https://vue.activewidgets.com/examples/local/columns/) | [Source on github](https://github.com/activewidgets/vue/tree/master/examples/columns) | [Edit on stackblitz](https://stackblitz.com/github/activewidgets/vue/tree/master/examples/columns)\n\n\n## User events\n\nIn addition to the standard DOM keyboard and mouse events the datagrid emits composite \n[mouse](https://activewidgets.com/api/datagrid/mouse-event/) event which makes it easier to find the elements affected by the user action -\n\n```js\nfunction onMouse({row}){\n    alert(`row ${row.key} clicked!`);\n}\n\nconst methods = { onMouse };\nexport default { components, data, methods };\n```\n\n```html\n\u003ctemplate\u003e\n    \u003cax-datagrid @mouse=\"onMouse\" :columns=\"columns\" :rows=\"rows\"\u003e\u003c/ax-datagrid\u003e\n\u003c/template\u003e\n```\n[Live example](https://vue.activewidgets.com/examples/local/events/) | [Source on github](https://github.com/activewidgets/vue/tree/master/examples/events) | [Edit on stackblitz](https://stackblitz.com/github/activewidgets/vue/tree/master/examples/events)\n\n## More info\n\n- [Live demo](https://react.activewidgets.com) \n- [Developer guide](https://activewidgets.com/guide/) \n- [API reference](https://activewidgets.com/api/)\n- [Licensing](https://activewidgets.com/licenses/)\n- [Support forum](https://activewidgets.com/messages/)\n\n\n---\n\n[![ActiveWidgets](https://activewidgets.com/include/logo/aw-logo-40.png)](https://activewidgets.com) \n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factivewidgets%2Fvue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factivewidgets%2Fvue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factivewidgets%2Fvue/lists"}