Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在React with Typescript中循环通过两个接口道具的结合_Javascript_Node.js_Reactjs_Typescript_React Native - Fatal编程技术网

Javascript 如何在React with Typescript中循环通过两个接口道具的结合

Javascript 如何在React with Typescript中循环通过两个接口道具的结合,javascript,node.js,reactjs,typescript,react-native,Javascript,Node.js,Reactjs,Typescript,React Native,从下面的结构中,使用React 16.9.0和Typescript^16.9.20“: 文件A.ts: 出口接口人员{ id:number | | null, 名字:string, 出生日期:字符串, 某些\u唯一\u编号:字符串, } 文件B.ts: 导出接口成员{ 组名称:字符串: 名字:string, 传递代码:字符串, 某些\u唯一\u编号:字符串, } 文件C.tsx: #导入文件A #导入文件B 界面道具{ 结果:阵列; } 让newResult:any[]=[]{ 返回( {res

从下面的结构中,使用
React 16.9.0
Typescript^16.9.20“

文件A.ts:
出口接口人员{
id:number | | null,
名字:string,
出生日期:字符串,
某些\u唯一\u编号:字符串,
}
文件B.ts:
导出接口成员{
组名称:字符串:
名字:string,
传递代码:字符串,
某些\u唯一\u编号:字符串,
}
文件C.tsx:
#导入文件A
#导入文件B
界面道具{
结果:阵列;
}
让newResult:any[]=[]{
返回(
{result.id}
{result.first_name}
{结果.出生日期}
{result.group_name}
{result.pass_code}
);
});
}
我上面的当前解决方案正在生成以下错误:

Property 'id' does not exist on type 'person | member'.
  Property 'id' does not exist on type 'member'.  TS2339

    20 |         <div className="something" key={item.external_member_id}>
  > 21 |           {item.id}

类型“person | member”上不存在属性“id”。
类型“成员”上不存在属性“id”。TS2339
20 |         
>21 |{item.id}
基本上,我试图完成的是通过接口和显示的联合循环 A和B都有

提前谢谢你。

从文章中- 您可以多次定义同一接口,其定义将合并为一个接口:

不确定这是否有效,但如果我们对您的示例有创意:

// file A.ts
export interface person{
  id: number || null,
  first_name: string,
  date_of_birth: string,
  some_unique_number: string,
}


// file B.ts:
export interface member{
 group_name: string:
 first_name: string,
 pass_code: string,
 some_unique_number: string,
}

export interface peopleOrMember extends member
export interface peopleOrMember extends person

从文章中- 您可以多次定义同一接口,其定义将合并为一个接口:

不确定这是否有效,但如果我们对您的示例有创意:

// file A.ts
export interface person{
  id: number || null,
  first_name: string,
  date_of_birth: string,
  some_unique_number: string,
}


// file B.ts:
export interface member{
 group_name: string:
 first_name: string,
 pass_code: string,
 some_unique_number: string,
}

export interface peopleOrMember extends member
export interface peopleOrMember extends person

可能重复,接口IFooBar扩展IFoo,IBar{}和类型IFooBar=IFoo&IBar;这是否回答了您的问题?@MichaelDimmitt mine实际上不同,因为我必须使用
数组
而不是
&
。有什么想法吗?可能重复,接口IFooBar扩展IFoo,IBar{}然后键入IFooBar=IFoo&IBar;这是否回答了您的问题?@MichaelDimmitt我的实际情况不同,因为我必须使用
数组
而不是
&
。有什么想法吗?