Hello.
Hi Minkyu,You probably need to add the id attribute to the input. Unfortunately that's something that cost me a few hours to figure out:`<input id="UseFlag" type="text" v-model="data.UseFlag">`Hope it helps.RegardsTomasz
|
[index.js]
<ejs-grid>
<e-columns>
. . . .
<e-column
field="ShipCity"
headerText="Ship City"
editType="dropdownedit"
:edit="dpParams"
:allowFiltering="false"
width="120"
></e-column>
</e-columns>
</ejs-grid>
import { DropDownList } from "@syncfusion/ej2-dropdowns";
export default {
data() {
return {
filterSettings: { type: "Menu" },
dpParams: {
create: function() {
elem = document.createElement("input");
return elem;
},
read: () => {
return dropdownObj.value;
},
destroy: () => {
dropdownObj.destroy();
},
write: args => {
dropdownObj = new DropDownList({
dataSource: data,
value: args.rowData["ShipCity"],
fields: { text: "ShipCity", value: "ShipCity" }
});
dropdownObj.appendTo(elem);
}
}
};
},
provide: {
grid: [Page, Filter, Toolbar, Edit]
},
|
[Vue warn]: Property "data" must be accessed with "$data.data" because properties starting with "$" or "_" are not proxied in the Vue instance to prevent conflicts with Vue internals. See: https://vuejs.org/v2/api/#data
(found in <Root>)
And
vue.esm.js?a026:1897 TypeError: Cannot read property 'useAt' of undefined
at Proxy.eval (eval at createFunction (vue.esm.js:NaN), <anonymous>:3:88)
at Vue._render (vue.esm.js?a026:3557)
at Vue.updateComponent (vue.esm.js?a026:4064)
at Watcher.get (vue.esm.js?a026:4488)
at new Watcher (vue.esm.js?a026:4477)
at mountComponent (vue.esm.js?a026:4082)
at Vue.$mount (vue.esm.js?a026:9063)
at Vue.$mount (vue.esm.js?a026:11974)
at eval (template.js?ce56:19)
at eval (template-engine.js?d9ef:24)
So I tried to change `data.useAt` to `$data.data.useAt` then the cell edit template shows well, however, data doesn't applied to changed value.
I don't know what's the problem. I need your help again.
Regards.