при привязке к input[type=text] не меняла тип на String ? Пробовал через промежуточную переменную привязывать, но возникает циклическая зависимость
<script>
export let value;
let svalue;
$: value = parseFloat(svalue);
$: svalue = Number.isNaN(value) ? '' : value.toString();
</script>
<input type="text" bind:value={svalue}>
</div>
Можно сделать стор
ну так если тип input это текст то и переменная будет text к которой биндинг
в компонент передается свойство value типа Numeric, я хочу чтобы value осталось типа Numeric. Если в input введено не число, пусть будет NaN.
function customStore() { const str = writable() const num = derived(str, v => parseFloat(v)) return { str, num } } const store = customStore() $: console.log(store.$num + 1) // складываем числа $: console.log(store.$str + '!') // клеим строки <input type="text" bind:value={store.$str} />
тогда просто не стоит использовать биндинг
Скорее, неэлегантно. Вот в примере ниже мне всё нравится
Обсуждают сегодня