ホームページ >ウェブフロントエンド >Vue.js >コンポーネント タイプを取得する際に VUE3+TS が遭遇する落とし穴を解決する方法

コンポーネント タイプを取得する際に VUE3+TS が遭遇する落とし穴を解決する方法

WBOY
WBOY転載
2023-05-13 14:46:061121ブラウズ
    #VUE3 TS コンポーネント タイプの取得方法の落とし穴

    コンポーネント タイプの取得方法

    const AccountRef = ref<InstanceType<typeof LoginAccount>>()

    遭遇した落とし穴

    typeof LoginAccount が赤い線のプロンプト エラーを報告し続ける

    LoginAction: () => vo...&#39; provides no match for the signature &#39;new (...args: any): any&#39;.

    問題の原因

    ウェブストーム コーディングを使用し、ウェブストーム独自の右クリックで新しい vue ファイルを作成しましたが、作成されたファイルには結果として、常に

    <script lang="ts">
    export default {
    
    }
    </script>

    Solution

    Reference defineComponent

    <script lang="ts">
    import { defineComponent } from &#39;vue&#39;
    export default defineComponent({//注意这里的这个小括号不能漏
    
    })
    </script>

    VUE3 をレポートする上の赤い線が表示されます。TS はコンポーネント ref インスタンスを取得します

    使用する場合vue3 と ts では、コンポーネントの ref インスタンスを取得するには、ref 関数のジェネリック型で型を指定する必要があります。

    コンポーネントのタイプを取得するにはどうすればよいですか?

    vue の公式ドキュメントの TypeScript サポートにより、コンポーネントのタイプを取得する方法が示されています。InstanceTypee04e65952d6e6b1a46ff22542722891f

    使用方法は次のとおりです:

    const $userForm = ref<InstanceType<typeof userForm>>();

    以上がコンポーネント タイプを取得する際に VUE3+TS が遭遇する落とし穴を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。