UNPKG

@muban/muban

Version:

Writing components for server-rendered HTML

20 lines (19 loc) 592 B
import { unref, watchEffect } from '@vue/runtime-core'; function updateDisabledState(target, disabled) { if (disabled && target.disabled) { target.removeAttribute('disabled'); } else if (!disabled && !target.disabled) { target.disabled = true; } } export function enableBinding(target, valueAccessor) { return watchEffect(() => { updateDisabledState(target, !unref(valueAccessor)); }); } export function disableBinding(target, valueAccessor) { return watchEffect(() => { updateDisabledState(target, unref(valueAccessor)); }); }