fix v-sl-model for vars passed via setup()
parent
1ae89d38f8
commit
4c7b3f2942
|
@ -18,10 +18,22 @@ app.directive("sl-model", {
|
|||
| undefined;
|
||||
const value = slElement?.value;
|
||||
if (value && binding.instance) {
|
||||
(binding.instance.$data as { [key: string]: unknown })[binding.arg as string] = value;
|
||||
if (Object.hasOwnProperty.bind(binding.instance)(binding.arg!)) {
|
||||
(binding.instance as any)[binding.arg!] = value;
|
||||
} else {
|
||||
const data = (binding.instance.$data as { [key: string]: unknown });
|
||||
if (data.hasOwnProperty(binding.arg!)) {
|
||||
data[binding.arg!] = value;
|
||||
} else {
|
||||
console.error(`No property "${binding.arg}" exists on instance.`)
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
mounted: (element: SlInput, binding: DirectiveBinding<string>) => {
|
||||
element.value = (binding.instance as any)[binding.arg!];
|
||||
},
|
||||
updated: (element: Element, binding: DirectiveBinding<string>) => {
|
||||
const slElement = element as typeof SlInput.prototype | undefined;
|
||||
if (slElement) {
|
||||
|
|
Loading…
Reference in New Issue