我试图显示按OrderId
字段排序的数组值。这是我的代码:
var fields = [{value: "Claims", OrderId:3 }, {value: "Requests", OrderId:1 }, {value: "Access", OrderId: 2}] var listElements = fields.sort('OrderId', function(n){ return Math.sin(n) } ) .map( function(field) { return React.createElement('li', {}, React.createElement('h2',{}, field.value) ) }) var rootElement = React.createElement('div', {}, React.createElement('ul', {}, listElements) ) ReactDOM.render(rootElement, document.getElementById('container'));
这不会给我错误,并以所需的格式显示值,但未排序...如何在Reactjs世界中排序?
首先,检查您的字段名称,所有三个字段都应为OrderId,如果不是,则删除所有多余的引号。
然后出于排序目的,我不知道sortBy方法,您可以轻松使用sort方法,在下面查看此示例代码,然后让我知道它是否对您有用-
JS小提琴链接-https: //jsfiddle.net/4kq4vbdw/
var fields = [{value: "Claims", OrderId:3 }, {value: "Requests", OrderId:1 }, {value: "Access", OrderId: 2}]; fields.sort(function(a,b){ return parseInt(a.OrderId) - parseInt(b.OrderId); }) console.log(fields);