Javascript 无法显示该值

Javascript 无法显示该值,javascript,reactjs,Javascript,Reactjs,下面是我在render方法中的代码,我试图访问值arr[1]。Title,但出现以下错误 public render(){ var arr; return ( { Array.apply(null, {length:this.state.length}).map((value, i) => {i*=6; return( <div> { arr = this.cardarrange(this.props.pdata[i], t

下面是我在render方法中的代码,我试图访问值
arr[1]。Title
,但出现以下错误

public render(){
   var arr;
   return (
      {
      Array.apply(null, {length:this.state.length}).map((value, i) => {i*=6; return( <div> {
         arr = this.cardarrange(this.props.pdata[i], this.props.pdata[i+1], this.props.pdata[i+2])
      }
      {
         console.log(Object.keys(arr))
      }
      {
         console.log(JSON.stringify(arr[1].Title))
      }
      <h1>{JSON.stringify(arr[1].Title)}</h1>
   )

}<div>
 }
public render(){
var-arr;
返回(
{
Array.apply(null,{length:this.state.length}).map((value,i)=>{i*=6;返回({
arr=this.cardarrange(this.props.pdata[i],this.props.pdata[i+1],this.props.pdata[i+2])
}
{
控制台日志(对象键(arr))
}
{
console.log(JSON.stringify(arr[1].Title))
}
{JSON.stringify(arr[1].Title)}
)
}
}
这是什么原因

错误:

对象作为React子对象无效(找到:具有键的对象 {{查询、{选项、{url、{parentUrl、{useCaching、{cachingOptions、, _cloneParentWasCaching、\u cloneParentCacheOptions、\u requestPipeline、\u batch、\u batchDependency、\u forceCaching、delete、odata.metadata、odata.type、odata.id、odata.etag、odata.editLink、, FileSystemObject类型,Id,ServerRedirectedEmbedUri, ServerRedirectedEmbedUrl、ContentTypeId、ComplianceAsetId、WikiField、, 标题、CanvasContent1、BannerImageUrl、说明、促销状态、, FirstPublishedDate、LayoutWebpartsContent、OData_uuAuthorByLineId、, _AuthorBylineStringId、OData_uuuTopiHeader、OData_uuuSPSitePageFlags、OData_uuuuOriginalSourceURL、OData_uuuOriginalSourceSiteId、, OData__OriginalSourceWebId,OData__OriginalSourceList, OData_uu原始资源ID、种类、新闻类别, Read_x0020_times、Video_x0020_URL、部门、功能、集群、MCO、, 工作场所、卡类型、新闻源、启用共享、ID、, 创建、编写、修改、编辑、OData_uuCopySource、, CheckoutUserId、OData_uuuUIVersionString、GUID、LikeCount、CommentCount、, FileRef})

您应该只在
return
语句之后使用JSX(伪HTML),将其余代码移到
return
语句之前:

public render(){
   var arr = this.cardarrange(this.props.pdata[i], this.props.pdata[i+1], this.props.pdata[i+2]);
   console.log(Object.keys(arr));
   console.log(JSON.stringify(arr[1].Title));

   return (
      <h1>{JSON.stringify(arr[1].Title)}</h1>
   )
}
public render(){
var arr=this.cardarrange(this.props.pdata[i],this.props.pdata[i+1],this.props.pdata[i+2]);
console.log(Object.keys(arr));
log(JSON.stringify(arr[1].Title));
返回(
{JSON.stringify(arr[1].Title)}
)
}
此外,为
输出字符串化数据可能没有意义,这可能是您需要使用的:

   return (
      <h1>{arr[1].Title}</h1>
   )
返回(
{arr[1].标题}
)

您的
渲染
应该返回要显示的有效值,而不是计算或
控制台.log
构造。但是您可以在执行任何转换之前执行以下操作

public render(){
var arr=this.cardarrange(this.props.pdata[i],this.props.pdata[i+1],this.props.pdata[i+2];
控制台日志(对象键(arr))
console.log(JSON.stringify(arr[1].Title))
返回(
{JSON.stringify(arr[1].Title)}
)
}
公共渲染(){
设arr=this.cardarrange(propsData[i],propsData[i+1],propsData[i+2]);//返回要在h1中显示的数组
arr=JSON.stringfiy(arr);
返回(
{arr}
);
}
或者尝试此操作以显示数组的每个值

public render() {
let arr = this.cardarrange(propsData[i],propsData[i+1],propsData[i+2]); 
return arr.map(val => {
  return ( <h1>{val} </h1> );
});
}
public render(){
设arr=this.cardarrange(propsData[i]、propsData[i+1]、propsData[i+2]);
返回arr.map(val=>{
返回({val});
});
}

将逻辑移出returnthis.props.pdata是一个数组,我正在映射该数组,我想将前三个值传递给一个函数,该函数将返回一个数组。我想显示该数组请对此进行详细说明;最好是通过。如果它始终是前三项,请使用以下命令:
this.props.pdata[0],this.props.pdata[1],this.props.pdata[2]
。我已更改,请检查我很抱歉,但更改对我来说毫无意义。您正在
.map()
函数体中分配给
arr
,每次都会覆盖以前的分配,以及
.map()的结果
本身从未被使用过。所有这些都与尝试使用JSX混合在一起,但都是不完整的(没有结束标记)。代码甚至可能不会按原样编译。this.props.pdata是一个数组我正在映射该数组,我想将前三个值传递给函数,该函数将返回一个数组。我想显示该数组this.props.pdata是一个数组我正在映射该数组,我想将前三个值传递给函数,该函数将返回一个数组。我想显示该数组。让我编辑代码,函数cardarrange是你想显示的返回数组。试试这个,告诉我它是否解决了你的问题。
public render() {
let arr = this.cardarrange(propsData[i],propsData[i+1],propsData[i+2]); 
return arr.map(val => {
  return ( <h1>{val} </h1> );
});
}