|
<template>
<div id="app">
<ejs-grid
ref="grid"
:dataSource="users"
:allowFiltering="true"
:actionBegin="begin"
:filterSettings="filterOptions"
width="300"
>
<e-columns>
<e-column field="UserName" :filter="filter" headerText="UserName" width="50"></e-column>
<e-column
field="Id"
ForeignKeyField="Id"
foreignKeyValue="CountryName"
headerText="X2"
width="50"
:filter="filter"
:dataSource="contries"
></e-column>
</e-columns>
</ejs-grid>
</div>
</template>
<script>
import Vue from "vue";
import {
GridPlugin,
Resize,
ForeignKey,
Filter
} from "@syncfusion/ej2-vue-grids";
import { data } from "./datasource.js";
Vue.use(GridPlugin);
export default {
data() {
return {
users: [
{ Id: 1, UserName: "TEW", CountryId: 23 },
{ Id: 2, UserName: "WEDR", CountryId: 24 },
{ Id: 3, UserName: "SED", CountryId: 25 },
{ Id: 3, UserName: "TGY", CountryId: 26 },
{ Id: 4, UserName: "UHU", CountryId: 27 }
],
contries: [
{ Id: 1, CountryName: "India" },
{ Id: 2, CountryName: "India" },
{ Id: 3, CountryName: "America" },
{ Id: 3, CountryName: "America" },
{ Id: 4, CountryName: "China" }
],
filterOptions: {
type: "Menu"
},
filter: {
type: "CheckBox"
}
};
},
methods: {
},
provide: {
grid: [Resize, ForeignKey, Filter]
}
};
</script>
<style>
@import "https://cdn.syncfusion.com/ej2/material.css";
</style>
|