TypeScript抱怨在返回布尔值时';s对象
有这样一个TypeScript抱怨在返回布尔值时';s对象,typescript,Typescript,有这样一个createFields函数 地图来自洛达斯 const createFields = (usecase: SchemaObject): FieldInterface[] => { // TODO: Make the form blueprint to be generated from json schema const properties = usecase.properties; const requiredProperties = usecase.requ
createFields
函数
地图
来自洛达斯
const createFields = (usecase: SchemaObject): FieldInterface[] => {
// TODO: Make the form blueprint to be generated from json schema
const properties = usecase.properties;
const requiredProperties = usecase.required || [];
if (properties && isSchemaObject(properties)) {
return map(
properties,
(value: SchemaObject, key: string): FieldInterface => {
return {
type: value.type,
name: key,
label: key,
readonly: false,
required: requiredProperties.includes(key),
validations: [],
};
},
);
}
return [];
};
如图所示,typescript报告map
函数返回值和迭代器对象返回值的错误
但正如您在代码中看到的,返回值是一个对象。如果我将iteratee的返回类型更改为boolean
,它会反过来抱怨,如下所示
这里有什么问题?
boolean
是如何返回的?这与lodashmap
函数重载有关
因此,两者都需要将其设置为正确的过载
或者将lodash
map
替换为原生的Object.entries(Object.map)([key,value])=>{}
从“lodash”导入{map},对吗?@PhatHuynh是的,我做了。