コンテンツへスキップ

useCurrentElement

カテゴリ
エクスポートサイズ
355 B
最終変更日
先週

現在のコンポーネントのDOM要素をrefとして取得します。

デモ

コンソールログで要素を確認してください。

使用方法

TypeScript
import { useCurrentElement } from '@vueuse/core'

const el = useCurrentElement() // ComputedRef<Element>

または、特定のVueコンポーネントを渡します。

Vue
<script setup>
import { useCurrentElement } from '@vueuse/core'
import { ref } from 'vue'

const componentRef = ref()

const el = useCurrentElement(componentRef) // ComputedRef<Element>
</script>

<template>
  <div>
    <OtherVueComponent ref="componentRef" />
    <p>Hello world</p>
  </div>
</template>

情報

内部でcomputedWithControlを使用しているため、Vue 3でのみ動作します。

注意点

この関数は内部で$elを使用しています。

コンポーネントがマウントされるまでは、refの値はundefinedになります。

  • 単一のルート要素を持つコンポーネントの場合、その要素を指します。
  • テキストルートを持つコンポーネントの場合、テキストノードを指します。
  • 複数のルートノードを持つコンポーネントの場合、VueがDOM内のコンポーネントの位置を追跡するために使用するプレースホルダーDOMノードになります。

**単一のルート要素を持つコンポーネント**にのみこの関数を使用することをお勧めします。

型定義

TypeScript
export declare function useCurrentElement<
  T extends MaybeElement = MaybeElement,
  R extends VueInstance = VueInstance,
  E extends MaybeElement = MaybeElement extends T
    ? IsAny<R["$el"]> extends false
      ? R["$el"]
      : T
    : T,
>(rootComponent?: MaybeElementRef<R>): ComputedRefWithControl<E>

ソース

ソースデモドキュメント

コントリビューター

Anthony Fu
Anthony Fu
山吹色御守
Jessé Correia Lins
vaakian X

変更ログ

v12.0.0-beta.1 2024/11/21
0a9ed - feat!: Vue 2サポートの削除、バンドルの最適化、クリーンアップ (#4349)
v11.1.0 2024/9/16
8e141 - feat: $elから型を推論しようとします (#4202)
v10.8.0 2024/2/20
0a9aa - feat: 特定のコンポーネントから現在の要素を取得できるようにします (#3750)

MITライセンスの下でリリースされています。