React native React Native |在组件之间传递数据
我是一个母语为React的初学者。我想在两个组件之间传递数据。我得到以下错误: TypeError:undefined不是对象(正在计算'params.title' App.jsReact native React Native |在组件之间传递数据,react-native,React Native,我是一个母语为React的初学者。我想在两个组件之间传递数据。我得到以下错误: TypeError:undefined不是对象(正在计算'params.title' App.js import React from 'react'; import TabBar from './components/TabBar'; export default function App() { return ( <TabBar title="Hall Building"/> );
import React from 'react';
import TabBar from './components/TabBar';
export default function App() {
return (
<TabBar title="Hall Building"/>
);
}
从“React”导入React;
从“./components/TabBar”导入TabBar;
导出默认函数App(){
返回(
);
}
TabBar.js
import React, { useState } from 'react';
import { Text } from 'react-native';
export default function TabBar({ params }){
const [tabContent] = useState([
{
title: params.title,
}
])
return(
<Text>
{ tabContent.title }
</Text>
);
}
export { TabBar };
import React,{useState}来自“React”;
从“react native”导入{Text};
导出默认函数选项卡栏({params}){
const[tabContent]=useState([
{
标题:params.title,
}
])
返回(
{tabContent.title}
);
}
导出{TabBar};
您的选项卡栏中有几件事情做错了
在选项卡栏
中,您正在分解属性参数
,但您的属性名为title
。您必须删除花括号或将其重命名为title。如果将参数重命名为title,则可以删除参数。
,只需保留title
。如果您选择删除花括号,则可以让它保持原样
然后,您还可以尝试访问tabContent.title
但tabContent是一个包含对象的数组。您可以删除方括号并将对象作为参数传递给useState,也可以通过获取第一个索引来访问标题,如tabContent[0]。title
将您的选项卡更改为:
import React, { useState } from 'react';
import { Text } from 'react-native';
export default function TabBar({ title }){
const [tabContent] = useState(title)
return(
<Text>
{ tabContent }
</Text>
);
}
export { TabBar };
import React,{useState}来自“React”;
从“react native”导入{Text};
导出默认函数选项卡栏({title}){
const[tabContent]=useState(标题)
返回(
{tabContent}
);
}
导出{TabBar};
希望能有帮助