Package Exports
- @vaadin/grid
- @vaadin/grid/lit
- @vaadin/grid/lit.js
- @vaadin/grid/src/lit/column-renderer-directives
- @vaadin/grid/src/lit/column-renderer-directives.js
- @vaadin/grid/src/lit/renderer-directives.js
- @vaadin/grid/src/vaadin-grid
- @vaadin/grid/src/vaadin-grid-active-item-mixin.js
- @vaadin/grid/src/vaadin-grid-column
- @vaadin/grid/src/vaadin-grid-column-group.js
- @vaadin/grid/src/vaadin-grid-column.js
- @vaadin/grid/src/vaadin-grid-data-provider-mixin.js
- @vaadin/grid/src/vaadin-grid-filter-column.js
- @vaadin/grid/src/vaadin-grid-filter.js
- @vaadin/grid/src/vaadin-grid-selection-column.js
- @vaadin/grid/src/vaadin-grid-sort-column.js
- @vaadin/grid/src/vaadin-grid-sorter.js
- @vaadin/grid/src/vaadin-grid-tree-column.js
- @vaadin/grid/src/vaadin-grid-tree-toggle.js
- @vaadin/grid/src/vaadin-grid.js
- @vaadin/grid/src/vaadin-lit-grid-column.js
- @vaadin/grid/src/vaadin-lit-grid.js
- @vaadin/grid/theme/lumo/vaadin-grid-column-group.js
- @vaadin/grid/theme/lumo/vaadin-grid-column.js
- @vaadin/grid/theme/lumo/vaadin-grid-filter-column.js
- @vaadin/grid/theme/lumo/vaadin-grid-filter.js
- @vaadin/grid/theme/lumo/vaadin-grid-selection-column.js
- @vaadin/grid/theme/lumo/vaadin-grid-sort-column.js
- @vaadin/grid/theme/lumo/vaadin-grid-sorter.js
- @vaadin/grid/theme/lumo/vaadin-grid-styles.js
- @vaadin/grid/theme/lumo/vaadin-grid-tree-column.js
- @vaadin/grid/theme/lumo/vaadin-grid-tree-toggle.js
- @vaadin/grid/theme/lumo/vaadin-grid.js
- @vaadin/grid/theme/material/vaadin-grid-column-group.js
- @vaadin/grid/theme/material/vaadin-grid-column.js
- @vaadin/grid/theme/material/vaadin-grid-filter-column.js
- @vaadin/grid/theme/material/vaadin-grid-filter.js
- @vaadin/grid/theme/material/vaadin-grid-selection-column.js
- @vaadin/grid/theme/material/vaadin-grid-sort-column.js
- @vaadin/grid/theme/material/vaadin-grid-sorter.js
- @vaadin/grid/theme/material/vaadin-grid-styles.js
- @vaadin/grid/theme/material/vaadin-grid-tree-column.js
- @vaadin/grid/theme/material/vaadin-grid-tree-toggle.js
- @vaadin/grid/theme/material/vaadin-grid.js
- @vaadin/grid/vaadin-grid
- @vaadin/grid/vaadin-grid-column
- @vaadin/grid/vaadin-grid-column-group
- @vaadin/grid/vaadin-grid-column-group.js
- @vaadin/grid/vaadin-grid-column.js
- @vaadin/grid/vaadin-grid-filter
- @vaadin/grid/vaadin-grid-filter-column
- @vaadin/grid/vaadin-grid-filter-column.js
- @vaadin/grid/vaadin-grid-filter.js
- @vaadin/grid/vaadin-grid-selection-column
- @vaadin/grid/vaadin-grid-selection-column.js
- @vaadin/grid/vaadin-grid-sort-column
- @vaadin/grid/vaadin-grid-sort-column.js
- @vaadin/grid/vaadin-grid-sorter
- @vaadin/grid/vaadin-grid-sorter.js
- @vaadin/grid/vaadin-grid-tree-column
- @vaadin/grid/vaadin-grid-tree-column.js
- @vaadin/grid/vaadin-grid-tree-toggle
- @vaadin/grid/vaadin-grid-tree-toggle.js
- @vaadin/grid/vaadin-grid.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@vaadin/grid) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@vaadin/grid
A web component for showing tabular data.
<vaadin-grid theme="row-dividers" column-reordering-allowed multi-sort>
<vaadin-grid-selection-column auto-select frozen></vaadin-grid-selection-column>
<vaadin-grid-sort-column width="9em" path="firstName"></vaadin-grid-sort-column>
<vaadin-grid-sort-column width="9em" path="lastName"></vaadin-grid-sort-column>
<vaadin-grid-column id="address" width="15em" flex-grow="2" header="Address"></vaadin-grid-column>
</vaadin-grid>
<script>
// Customize the "Address" column's renderer
document.querySelector('#address').renderer = (root, grid, model) => {
root.textContent = `${model.item.address.street}, ${model.item.address.city}`;
};
// Populate the grid with data
const grid = document.querySelector('vaadin-grid');
fetch('https://demo.vaadin.com/demo-data/1.0/people?count=200')
.then((res) => res.json())
.then((json) => (grid.items = json.result));
</script>Installation
Install the component:
npm i @vaadin/gridOnce installed, import the components in your application:
import '@vaadin/grid';
import '@vaadin/grid/vaadin-grid-column-group.js';
import '@vaadin/grid/vaadin-grid-filter-column.js';
import '@vaadin/grid/vaadin-grid-selection-column.js';
import '@vaadin/grid/vaadin-grid-sort-column.js';
import '@vaadin/grid/vaadin-grid-tree-column.js';Themes
Vaadin components come with two built-in themes, Lumo and Material. The main entrypoint of the package uses the Lumo theme.
To use the Material theme, import the components from the theme/material folder:
import '@vaadin/grid/theme/material/vaadin-grid.js';
import '@vaadin/grid/theme/material/vaadin-grid-filter-column.js';
import '@vaadin/grid/theme/material/vaadin-grid-selection-column.js';
import '@vaadin/grid/theme/material/vaadin-grid-sort-column.js';
import '@vaadin/grid/theme/material/vaadin-grid-tree-column.js';You can also import the Lumo version of the components explicitly:
import '@vaadin/grid/theme/lumo/vaadin-grid.js';
import '@vaadin/grid/theme/lumo/vaadin-grid-filter-column.js';
import '@vaadin/grid/theme/lumo/vaadin-grid-selection-column.js';
import '@vaadin/grid/theme/lumo/vaadin-grid-sort-column.js';
import '@vaadin/grid/theme/lumo/vaadin-grid-tree-column.js';Finally, you can import the un-themed components from the src folder to get a minimal starting point:
import '@vaadin/grid/src/vaadin-grid.js';
import '@vaadin/grid/src/vaadin-grid-column-group.js';
import '@vaadin/grid/src/vaadin-grid-filter-column.js';
import '@vaadin/grid/src/vaadin-grid-selection-column.js';
import '@vaadin/grid/src/vaadin-grid-sort-column.js';
import '@vaadin/grid/src/vaadin-grid-tree-column.js';Contributing
Read the contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to test your changes to Vaadin components.
License
Apache License 2.0
Vaadin collects usage statistics at development time to improve this product. For details and to opt-out, see https://github.com/vaadin/vaadin-usage-statistics.
