実現したいこと
モックを使用し、ユーザー情報を用意したいのですが、型チェックで怒られるので解消したい
前提
ユーザー情報を用意したところ、型チェックで下記のエラーが出た
発生している問題・エラーメッセージ
型 '{name: string; address: string; }[]' を型 '[{ name: string; address: string; }]' に割り当てることはできません。 ターゲットには 1 個の要素が必要ですが、ソースに指定する数はそれより少なくても構いません。
該当のソースコード
users.ts import { rest } from './rest'; export type User = { links?: [ { name: string; address: string; } ]; }; export type FetchUsersRequest = { user: User; }; /** * ユーザー情報を取得。 * * @param params * @returns */ export const fetchUsers = async (params: FetchUsersRequest) => { const url = `/api/users/${params.id}`; const { data } = await rest.get<FetchUsersResponse>(url); return data; };
index.ts import { MockMethods, MockResponse } from 'axios-mock-server'; import log from 'loglevel'; import { FetchUsersResponse } from '../../../../users'; export const mockUserBasic = { links: [ { name: 'テスト', address: 'test@test.test', }, ], }; const mock: MockMethods = { get: async (): Promise<MockResponse> => { log.debug('called mock get api.'); const data: FetchUsersResponse = { user: mockUserBasic, ⬅︎ココで怒られる }; return [200, data]; }, }; export default mock;
回答1件
あなたの回答
tips
プレビュー