検索

ホームページ  >  に質問  >  本文

タイプ '{}' には属性 '' がありません

ログイン ページにコンテキスト フックを設定しようとしています。タイプスクリプトを使用しています。コンテキストフックを開始しましたが、型宣言で問題が発生しました。 setUser を使用しようとすると、次のエラーが表示されます: プロパティ 'setUser' はタイプ '{}' に存在しません。

これがこれまでの私のコンテキストフックです。

リーリー

これは私のログインコードです。

ああああ

P粉615829742P粉615829742283日前406

全員に返信(1)返信します

  • P粉998100648

    P粉9981006482024-03-27 00:40:12

    UserContext 変数の型を指定する必要があります。 createContext{} パラメータを指定したため、Typescript はコンテキストのタイプが React.Context<{}> であると想定します。したがって、コンテキスト オブジェクトを使用しようとすると、ユーザー定義のプロパティを持たない空のオブジェクト {} が返されます。

    最初に新しいインターフェイスを定義しますが、必要に応じて入力できます。

    リーリー

    UserContext のタイプを宣言するには、次のことができます:

    1. タイプに一致するデフォルト値を指定します

      リーリー

    2. デフォルトのコンテキスト値を空のオブジェクト/nullに設定します

      リーリー

    3. 空のオブジェクトの型変換 (型安全性が低い)

      リーリー

    4. 非 null アサーション (型安全性が低い)

      リーリー

    これらの一部については、後で null チェックを記述する必要があることに注意してください。詳細については、

    ここを参照してください。

    返事
    0
  • キャンセル返事