return [setRef, isIntersecting] as const;const arr = [1, 'text', true] - имеет тип по умолчанию Array<string | number | boolean>, а значит если мы сделаем так: arr[0] *= 2; тайпскрипт будет жаловаться на то что arr[0] не точно number, а может ещё быть и string и boolean. as const мы даём тайпскрипту знать, что этот массив никогда не будет меняться и по сути является кортежем.const useOnScreen = (option?: IntersectionObserverInit): [Dispatch<SetStateAction<HTMLDivElement | undefined>>, boolean] => { но это излишне многословно, как по мне.)
src никак не влияет на работу базового хука, те изменения, что внёс чувак, нужны если элементы вырисовываются по условию{condition ? <A ref={ref}/> : <B/>}) - не твой случай.
params и showInfo как props.
<template>
<span data-toggle="tooltip" v-on="$listeners" v-bind="$attrs">
<slot/>
</span>
</template>
<script>
export default {
mounted() {
$(this.$el).tooltip()
}
}
</script><td>
<b-tooltip v-if="box.fefco == '0201'" data-html="true" data-title="<img class='d-block m-1 mx auto'
src='/img/0201.jpg'>">Fefco 0201 — четырехклапанная</b-tooltip>
</td>
if(type === "people") {
if(subtype === "adult") ...
else if ...
else if ...
else if ...
} else if ...
один раз пишем боль-мене сложный тип-преобразователь "тип структуры" - "тип приведённый выше"
то и значение по умолчанию автоматом будет, и вот так писать можно:
<configurator is-loading/>:)