Javascript UI控件JS、React的排序
我有两个输入控件来捕获UI中的文本,分别称为“名字”和“姓氏”。要根据区域设置对这些控件进行排序。例如,如果区域设置为en,则姓氏后应加上名字。否则,如果区域设置为ja,则姓氏应跟在名字后面 我能想到的唯一解决办法是使用条件语句Javascript UI控件JS、React的排序,javascript,reactjs,Javascript,Reactjs,我有两个输入控件来捕获UI中的文本,分别称为“名字”和“姓氏”。要根据区域设置对这些控件进行排序。例如,如果区域设置为en,则姓氏后应加上名字。否则,如果区域设置为ja,则姓氏应跟在名字后面 我能想到的唯一解决办法是使用条件语句 我做过一点谷歌,探索过react intl,但帮不了什么忙。是否有更好的方法根据区域设置处理控件顺序?首先,您需要一个表示数据的对象: const fields = [ {key: 'firstName', en: 'First Name', fr: 'Prenom
我做过一点谷歌,探索过react intl,但帮不了什么忙。是否有更好的方法根据区域设置处理控件顺序?首先,您需要一个表示数据的对象:
const fields = [
{key: 'firstName', en: 'First Name', fr: 'Prenom'},
{key: 'lastName', en: 'Last Name', fr: 'Nom'}
];
然后,您可以按自己喜欢的方式对其进行排序:
const locale = 'fr'; // Can be anything here, based on your config
const sortedFields = fields.sort((a, b) => {
if (a[locale] > b[locale]) {
return 1;
}
if (a[locale] < b[locale]) {
return -1;
}
return 0;
});
const locale='fr';//根据您的配置,这里可以是任何内容
const sortedFields=字段。排序((a,b)=>{
如果(a[locale]>b[locale]){
返回1;
}
if(a[locale]
字段排序后,可以渲染组件:
render() {
return <div>
{sortedFields.map(f => <span>{f.key}</span>)}
</div>;
}
render(){
返回
{sortedFields.map(f=>{f.key}}
;
}