我收到此錯誤爲什麼擴展接口不能分配給匹配對象的泛型類型?
[ts] Type '{ type: string; }' is not assignable to type 'A'.
與下面的代碼
interface Action {
type: string;
}
function requestEntities<A extends Action>(type: string) {
return function(): A {
return { type };
};
}
爲什麼不是分配? A
延伸Action
,它只有一個屬性:type
,這是一個字符串。這裏有什麼問題?
問題A
可能有更多的屬性?那麼我如何告訴TypeScript,A
仍然只有type: string
屬性而沒有別的?
編輯
僅供參考,我想添加的通用A
是因爲A
將有特定 string類型屬性,例如原因{ string: 'FETCH_ITEMS' }
。