refactor(toggle): access ref in afterUpdate method

This commit is contained in:
Eric Liu 2019-12-25 07:16:43 -08:00
commit 8ea50a807a
2 changed files with 8 additions and 14 deletions

View file

@ -9,20 +9,17 @@
export let labelB = 'On'; export let labelB = 'On';
export let style = undefined; export let style = undefined;
import { createEventDispatcher } from 'svelte'; import { createEventDispatcher, afterUpdate } from 'svelte';
import { cx } from '../../lib'; import { cx } from '../../lib';
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
let inputRef = undefined; let inputRef = undefined;
$: { afterUpdate(() => {
dispatch('toggle', { id, toggled });
if (inputRef) {
inputRef.checked = toggled; inputRef.checked = toggled;
} dispatch('toggle', { id, toggled });
} });
</script> </script>
<div on:click on:mouseover on:mouseenter on:mouseleave class={cx('--form-item', className)} {style}> <div on:click on:mouseover on:mouseenter on:mouseleave class={cx('--form-item', className)} {style}>

View file

@ -9,20 +9,17 @@
export let labelB = 'On'; export let labelB = 'On';
export let style = undefined; export let style = undefined;
import { createEventDispatcher } from 'svelte'; import { createEventDispatcher, afterUpdate } from 'svelte';
import { cx } from '../../lib'; import { cx } from '../../lib';
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
let inputRef = undefined; let inputRef = undefined;
$: { afterUpdate(() => {
dispatch('toggle', { id, toggled });
if (inputRef) {
inputRef.checked = toggled; inputRef.checked = toggled;
} dispatch('toggle', { id, toggled });
} });
</script> </script>
<div on:click on:mouseover on:mouseenter on:mouseleave class={cx('--form-item', className)} {style}> <div on:click on:mouseover on:mouseenter on:mouseleave class={cx('--form-item', className)} {style}>