javascript - 如何在 ReactJS 中开启订单

标签 javascript reactjs sorting ecmascript-6 es6-promise

我正在用 ascdesc 进行排序。如果用户第一次点击我想用 name asc 更新它,我想制定逻辑,当用户第二次点击我想用 name desc 更新它。每当用户点击时,它将以相同的方式重复。

代码

        class Example extends React.Component {
  constructor(props) {
    super(props);

    this.state = {
      Item: 5,
      skip: 0
    }

    this.handleClick = this.handleClick.bind(this);
  }

  urlParams() {
    return `http://localhost:3001/meetups?filter[limit]=${(this.state.Item)}&&filter[skip]=${this.state.skip}`
  }

  handleClick() {
    this.setState({skip: this.state.skip + 1})
  }

  render() {
    return (
      <div>
        <a href={this.urlParams()}>Example link</a>
        <pre>{this.urlParams()}</pre>
        <button onClick={this.handleClick}>Change link</button>
      </div>
    )
  }
}


ReactDOM.render(<Example/>, document.querySelector('div#my-example' ))

最佳答案

您可以根据您所处的状态进行切换。

getSortedData = () => {
  this.setState({
    sortedData: this.state.sortedData === "name asc" ? "name desc" : "name asc"
  }, () => {
    this.getData();
  });
};

所以这个将按以下方式工作:

sortedData = "name asc";
console.log(sortedData);
setInterval(function () {
  sortedData = sortedData === "name asc" ? "name desc" : "name asc";
  console.log(sortedData);
}, 500);

关于javascript - 如何在 ReactJS 中开启订单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55283338/

相关文章:

javascript - js滑动菜单求助——中间有动画延迟?

javascript - 一个人如何通过 react 进行双向数据绑定(bind),当输入值 A 在 B 更新时更新,反之亦然?

java - 想要根据对象键对 map 进行排序

ios - 排序 NSMutableArray 的问题

javascript - 如何为 FOR 循环中的变量名分配索引?

javascript - JSON.stringify() 无法工作

javascript - 仅对 DIV 内的文本应用样式

javascript - 更改react-chartjs 2中的工具提示方向

javascript - React Redux(在单个文件中)在存储更改后不调用 render()

mysql - 对 2 列求和并使用 DESC 对其进行排序,并且仅显示 1 条记录并优先插入(最小的 id)