2017-05-24 20 views
0

を呼び出し対象のいずれかの署名と一致していないと私は署名提供されたパラメータは、次のエラーを取得する(反応-モックストア)

に[TS]指定されたパラメータに一致していますように、それはそうなので、私は理解していませんコールターゲットのシグネチャと一致しません。 const mockStore:{ todo:string;} | undefined)=> IStore < { todo:string []; }>

import configureMockStore from 'redux-mock-store' 

type MyStore = { 
    todo: string[]; 
} 

const mockStore = configureMockStore<MyStore>([]); 

let storeVar : MyStore = {todo: ['one','two']}; 
const store = mockStore<MyStore>(storeVar); 

redux-mock-storeのtypedefがDefinitivelyTypedから来ている:

// Type definitions for Redux Mock Store v0.0.6 
// Project: https://github.com/arnaudbenard/redux-mock-store 
// Definitions by: Marian Palkus <https://github.com/MarianPalkus>, Cap3 <http://www.cap3.de> 
// Definitions: https://github.com/borisyankov/DefinitelyTyped 

///<reference types="redux" /> 

declare module 'redux-mock-store' { 
    import * as Redux from 'redux' 

    function createMockStore<T>(middlewares?: Redux.Middleware[]): mockStore<T>; 

    export type mockStore<T> = (state?: T) => IStore<T>; 

    export interface IStore<T> { 
     dispatch(action: any): any; 
     getState(): T; 
     getActions(): any[]; 
     clearActions(): void; 
     subscribe(listener: Function): Function; 
    } 

    export default createMockStore 
} 

答えて

1

あなたはmockStoreを呼び出すときに型パラメータを指定する必要はありません。 createMockStoreはすでにmockStoreの型を返します。

const store = mockStore(storeVar); 
関連する問題