我试图在按下按钮时按字母顺序对数组进行排序,但是到目前为止,我尝试的所有操作都失败了。按钮和功能在我尝试控制台记录某些内容时起作用,并在控制台中打印。我感觉我的排序功能有误,但是我不确定该怎么办。我该如何解决才能使其正常工作?
s=?
s.encode("UTF-8") -> results in error
答案 0 :(得分:1)
尝试一下
sortAlpha() {
const breweries = [...this.state.breweries].sort((a, b) => {
if (a.name < b.name) return -1;
if (a.name > b.name) return 1;
return 0;
});
this.setState({ breweries: breweries });
}
答案 1 :(得分:1)
sort不适用于字符串。
它应该返回以下三个值之一:
SparkContext.runJob
大于a.value
则为正数。b.value
大于b.value
,则为负数。a.value
== 0
,则为零(a.value
因此,您的情况应该是这样的:
b.value
请记住,.sort((a, b) => {
if (a.name < b.name) { return -1; }
if (a.name > b.name) { return 1; }
return 0;
});
对元素进行了排序(变异)