【发布时间】:2018-05-25 03:50:37
【问题描述】:
请告诉我,为什么会出现错误?
interface IAction {
readonly type: "GET_CURRENT_DATE" | "SET_CURRENT_DATE";
}
interface IDispatch {
(param: IAction): void;
}
export const getCurrentDate = () => (dispatch: IDispatch) => {
dispatch({type: "GET_CURRENT_DATE"});
};
错误:参数类型 {type:string} 不可分配给参数类型 IAction
但 {type: "GET_CURRENT_DATE"} 与 IAction 相同
更新: 在 package.json ->“打字稿”:“^2.6.2”。 使用 webpack "ts-loader" 编译也没有错误,但在我的 IDE (PhpStorm 2017.3) 中我看到了这个错误消息。
【问题讨论】:
-
准确的代码在the TypeScript Playground 中没有错误。你使用的是什么版本的 TypeScript?
-
“打字稿”:“^2.6.2”。使用 webpack ts-loader 编译也没有错误,但在我的 IDE (PhpStorm 2017.3) 中我看到了这个错误消息。
-
通常您应该确保您的问题是complete and verifiable,以便其他人可以帮助您。现在我建议你了解一下你的 IDE 是如何运行 TypeScript 编译器的,因为你的问题很可能是配置问题而不是代码问题。
-
你是对的。我已经在“设置|语言和框架|打字稿”中更改了此设置,并将选中的“角度语言服务”更改为“也适用于没有 tsconfig.json 的项目”。现在可以了
标签: reactjs typescript types interface