簡體   English   中英

react-testing-library 和 TypeScript 中 renderHook 的合適類型是什么?

[英]What is the suitable type for renderHook in react-testing-library and TypeScript?

我想用react-testing-library測試一個自定義鈎子,因此,我將此代碼添加到 beforeEach 中:

let renderedHook ;

beforeEach(() => {
  renderedHook = renderHook(() => useFetch());
});

test('.....', () => {
  expect(renderedHook.current.data).toBe(1);
});

上面的代碼運行良好! 但我使用的是 TypeScript,在這種情況下,什么是let renderedHook renderHook 的合適類型?

如果您的 IDE 或編輯器支持“Go to Definition”功能,您可以檢查renderHook的 TS 類型。

renderHook的返回類型是renderHook

例如

import { Renderer, renderHook, RenderHookResult } from '@testing-library/react-hooks';
import { useState } from 'react';

const useFetch = () => {
  const [data] = useState(1);
  return { data };
};

let renderedHook: RenderHookResult<unknown, { data: number }, Renderer<unknown>>;

describe('72601993', () => {
  beforeEach(() => {
    renderedHook = renderHook(() => useFetch());
  });

  test('.....', () => {
    expect(renderedHook.result.current.data).toBe(1);
  });
});

包版本:

"@testing-library/react-hooks": "^8.0.0",

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM