Javascript 如何在react native中访问状态为的外部函数值
我正在尝试映射“socialMediaDetail”数组并获取它们的名称。此数组中没有任何值。现在我正试图从这个数组中获取twitter,然后我想在状态中获取该值。我该怎么做请帮忙 下面是数组vakueJavascript 如何在react native中访问状态为的外部函数值,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我正在尝试映射“socialMediaDetail”数组并获取它们的名称。此数组中没有任何值。现在我正试图从这个数组中获取twitter,然后我想在状态中获取该值。我该怎么做请帮忙 下面是数组vakue socialMediaDetails: socialMediaDetail: Array(5) 0: link: "HARIRAM@twitter.com" name: "twitter" __typename: "SocialMediaDetail" __proto__: Object 1:
socialMediaDetails:
socialMediaDetail: Array(5)
0:
link: "HARIRAM@twitter.com"
name: "twitter"
__typename: "SocialMediaDetail"
__proto__: Object
1:
link: "VarnaHERO@facebook.com"
name: "facebook"
__typename: "SocialMediaDetail"
__proto__: Object
2:
link: "linkedIn@linkedin.com"
name: "linkedIn"
__typename: "SocialMediaDetail"
下面是代码
class UpdateNotificationpreference extends Component {
constructor(props) {
super(props);
const{navigation}=this.props;
const{contactDetails,socialMediaDetails}= navigation.state.params.customerInfo[0];
const{socialMediaDetail}=socialMediaDetails;
socialMediaDetail.map((data, index) => {
const twitter= data.name==="twitter";
});
this.state = {
title: 'Update Notification Preference',
mobile: navigation.state.params.serviceNumber,
icon: 'sim',
isChecked: false,
facebook: navigation.state.params.customerInfo[0].socialMediaDetails.socialMediaDetail[1].name==="facebook"?true : false,
isTwitter:this.twitter==="twitter"?true:false,
render(){
return(
{this.state.isTwitter === true &&
<View style={{marginTop:15}}>
<Label img={FAX_MINI} textLabel="FAX"/>
<Item style={{borderColor: '#00fff', borderBottomWidth:1, marginLeft:0}}>
<Input
value={this.state.faxNum}
onChangeText={(text) => this.setState({faxNum:text})}
/>
</Item>
</View>}
)
}
class UpdateNotificationpreference扩展组件{
建造师(道具){
超级(道具);
const{navigation}=this.props;
const{contactDetails,socialMediaDetails}=navigation.state.params.customerInfo[0];
const{socialMediaDetail}=socialMediaDetails;
socialMediaDetail.map((数据,索引)=>{
const twitter=data.name==“twitter”;
});
此.state={
标题:“更新通知首选项”,
手机:navigation.state.params.serviceNumber,
图标:“sim”,
检查:错误,
facebook:navigation.state.params.customerInfo[0]。socialMediaDetails.socialMediaDetails[1]。name==“facebook”?true:false,
isTwitter:this.twitter==“twitter”?对:错,
render(){
返回(
{this.state.isTwitter===true&&
this.setState({faxNum:text})
/>
}
)
}
谢谢您已将该变量设置为常量。可能尝试将其更改为let或var?var something=“hello”;var也不起作用。您是说无法获取常量的Twitter值吗?您正在执行
socialMediaDetail.map()
但没有将结果数组存储在任何位置,.map()
不会改变原始数组,也不会在.map
回调中返回任何内容。是否尝试在构造函数中获取twitter链接?您已将该变量设置为常量。可能尝试将其更改为let或var?var something=“hello”;var也不起作用你是说你不能得到Const的Twitter值吗?你在做socialMediaDetail.map()
但没有将结果数组存储在任何地方,.map()
不会改变原始数组,也不会在.map
回调中返回任何内容。您是否试图在构造函数中获取twitter链接?