How to get started easily with an example of Syncfusion Vue data grid/datatable?
This document explains you about, how to create the Essential JavaScript 2 Grid sample in Vue.
Setup Vue Environment
You can use the Vue CLI to setup your Vue applications. To install Vue CLI use the following commands.
npm install -g @vue/cli
npm install -g @vue/cli-init
Creating a Vue Application
Start a new Vue application using the below Vue CLI command.
vue init webpack-simple quickstart
cd quickstart
npm install
Adding Syncfusion Grid packages
All the available Essential JS 2 packages are published in npmjs.com public registry.
To install Grid component, please use the following command.
npm install @syncfusion/ej2-vue-grids --save
Registering Grid Component
You can register the Grid component in your application by using the Vue.use().
Please refer the following code example.
import { GridPlugin } from '@syncfusion/ej2-vue-grids';
Vue.use(GridPlugin);
Adding CSS reference
Import components CSS as given below in the style section of the App.vue file. Here, Material theme is used for this sample.
<style> @import '../node_modules/@syncfusion/ej2-base/styles/material.css'; @import '../node_modules/@syncfusion/ej2-buttons/styles/material.css'; @import '../node_modules/@syncfusion/ej2-calendars/styles/material.css'; @import '../node_modules/@syncfusion/ej2-dropdowns/styles/material.css'; @import '../node_modules/@syncfusion/ej2-inputs/styles/material.css'; @import '../node_modules/@syncfusion/ej2-navigations/styles/material.css'; @import '../node_modules/@syncfusion/ej2-popups/styles/material.css'; @import '../node_modules/@syncfusion/ej2-splitbuttons/styles/material.css'; @import "../node_modules/@syncfusion/ej2-vue-grids/styles/material.css"; </style>
Adding Grid component
Now, you can start adding the Grid component in App.vue file like as shown below.
<template>
<div id="app">
<ejs-grid :dataSource="data" :allowPaging='true'>
<e-columns>
<e-column field='OrderID' headerText='Order ID' textAlign='Right' width=100></e-column>
<e-column field='CustomerID' headerText='Customer ID' textAlign="Left" width=100></e-column>
<e-column field='Freight' headerText='Freight' textAlign='Right' format='C2' width=100></e-column>
<e-column field='ShipCountry' headerText='Ship Country' textAlign="Left" width=100></e-column>
</e-columns>
</ejs-grid>
</div>
</template>
<script>
import Vue from "vue";
import { GridPlugin, Page } from "@syncfusion/ej2-vue-grids";
import { data } from './datasource.js';
Vue.use(GridPlugin);
export default {
data () {
return {
data: data
}
},
provide: {
grid: [Page]
}
}
</script>
<style>
@import '../node_modules/@syncfusion/ej2-base/styles/material.css';
@import '../node_modules/@syncfusion/ej2-buttons/styles/material.css';
@import '../node_modules/@syncfusion/ej2-calendars/styles/material.css';
@import '../node_modules/@syncfusion/ej2-dropdowns/styles/material.css';
@import '../node_modules/@syncfusion/ej2-inputs/styles/material.css';
@import '../node_modules/@syncfusion/ej2-navigations/styles/material.css';
@import '../node_modules/@syncfusion/ej2-popups/styles/material.css';
@import '../node_modules/@syncfusion/ej2-splitbuttons/styles/material.css';
@import "../node_modules/@syncfusion/ej2-vue-grids/styles/material.css";
</style>
Running the application
The Vue Grid application is configured to compile. Now, you can run the application in a browser. Use the following command to run the application.
npm run dev
The output will appear as follows.

Demo:
https://www.syncfusion.com/downloads/support/directtrac/general/ze/quickstart1636225415.zip