created
и до mounted
, на mounted
шаблон уже примонтирован в dom
и все переменные давно взял и обработал, а ты их только присваиваешь.computed
. Если переменная не должна обновляться при изменении - фигач в created
. <template>
<child-component :id="$route.params.id"/>
</template>
const div = document.createElement('div');
div.setAttribute(':isLoAding', 'true');
console.log(div.outerHTML) // <div :isloading="true"></div>
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/>}
) - не твой случай.