javascript - 如何使用 flexbox 设计排名?
问题描述
我正在努力把名字俱乐部放在左边,把他的等级放在右边。
有人可以帮我吗?
我正在尝试使用 flexDirection 'column' 和 'row' 但数字总是粘贴到名称俱乐部 让我们在我的功能下方
renderClassement = () => {
return this.state.sport.clubs.map((element) => {
return (
<SafeAreaView>
<View
style={{
flexDirection: 'column',
backgroundColor: 'black',
alignItems: 'flex-end',
}}>
<View>
<Text
style={{
fontSize: 20,
textAlign: 'left',
color: 'white',
marginRight: 130,
}}>
{element.nomClub}
</Text>
</View>
<View>
<Text
style={{
color: 'white',
textAlign: 'left',
}}>
{element.moyenneRank}
</Text>
</View>
</View>
</SafeAreaView>
);
});
};
还有我的渲染
render() {
return (
<SafeAreaView>
<ScrollView style={{backgroundColor: 'black'}}>
<View style={{flex: 1}}>
<Text style={{fontSize: 30}}>{this.renderClassement()}</Text>
</View>
</ScrollView>
</SafeAreaView>
);
}
}
解决方案
这是您在下面的代码中似乎过于复杂的东西是堆栈上的一个工作示例
this.state = {
DATA: [{ name: "club1", points: "5" }, { name: "club2", points: "10" }, { name: "club3", points: "15" }, { name: "club4", points: "20" }],
};
虚拟状态数据
this.state.DATA.map((element) => {
return (
<View style={{ flexDirection: 'row', justifyContent: 'space-between', alignItems: 'center', backgroundColor: 'black' }}>
<Text style={{ fontSize: 20,textAlign: 'left', color: 'white', marginRight: 130, }}> {element.name} </Text>
<Text style={{ color: 'white', textAlign: 'left', }}> {element.points} </Text>
</View>
);
})
映射数据
return (
<SafeAreaView>
<ScrollView style={{backgroundColor: 'black'}}>
<View style={{flex: 1}}> {renderClassement()} </View>
</ScrollView>
</SafeAreaView>
);
渲染返回
推荐阅读
- reactjs - 图像未在 React 中加载,也没有错误
- three.js - Threejs与不透明度混合
- python - 在线法官给出错误答案
- python-3.x - 使用 Pandas 读取 excel 文件时如何避免“不支持的文件格式”错误
- azure - 我可以在 Azure 警报自定义负载中包含 alertId
- powerbi - 使用 PowerBI (DAX) 计算经常性客户,得到计算错误
- azure-active-directory - Microsoft Intune 如何更改设置(例如密码策略)以保持注册表值不变?
- c# - 批量插入时ADO.net服务器超时,如何改进?
- amazon-web-services - 爬虫如何比直接连接到数据库和检索数据好得多?
- javascript - 为什么我的删除事件侦听器不起作用?