Good morning,
I am working on the last version with Vue 3 and I am trying to change the search input from a toolbar on a grid for a custom component.
I followed this part of the documentation:
https://ej2.syncfusion.com/vue/documentation/grid/tool-bar/#custom-toolbar
but in Vue 3 there is no Vue.Component.
I also tryed to combine with this other documentation:
https://ej2.syncfusion.com/vue/documentation/getting-started/vue3-tutorial/#component-inside-template-property
but const app = createApp(); need at least one parameter.
This is how it looks like :
I would prefer to have something like:
Hello?
|
module.exports = {
runtimeCompiler: true
} |
|
<template>
<ejs-grid :dataSource='gridData' allowPaging="true" :toolbarTemplate='toolbar' :pageSettings='pageSettings' allowSorting="true">
<e-columns>
<e-column field='EmployeeID' headerText='Employee ID' :isPrimaryKey='true' width=100></e-column>
<e-column field='FirstName' headerText='First Name' width=120></e-column>
<e-column field='Title' headerText='Title' width=150></e-column>
<e-column field='Country' headerText='Country' width=150></e-column>
</e-columns>
</ejs-grid>
</template>
<script>
import { GridComponent, ColumnsDirective, ColumnDirective, Sort, Page, Toolbar } from '@syncfusion/ej2-vue-grids';
import { ToolbarComponent, ItemsDirective, ItemDirective } from '@syncfusion/ej2-vue-navigations';
import { employeeData } from './datasource.js';
import { createApp } from "vue";
const app = createApp();
var colVue = app.component('toolbar', {
template: `<ejs-toolbar>
<e-items>
<e-item id='collapse' prefixIcon='e-collapse'></e-item>
</e-items>
</ejs-toolbar>`,
components: {
"ejs-toolbar": ToolbarComponent,
"e-items": ItemsDirective,
"e-item": ItemDirective
},
data () {return {}},
});
export default {
name: 'App',
components: {
'ejs-grid' : GridComponent,
'e-columns' : ColumnsDirective,
'e-column' : ColumnDirective
},
provide: {grid: [Sort, Page, Toolbar]},
data() {
return {
gridData: employeeData,
pageSettings: { pageSize: 5},
toolbar: function() {
return { template: colVue };
}
}
}
}
</script>
<style>
.e-grid .e-collapse::before {
content: "\e345";
}
</style> |