मैं एक घटक प्रस्तुत कर रहा हूं जो एक सरणी प्रदर्शित करता है और मैं चाहता हूं कि उन्हें अंतिम प्रविष्टि द्वारा ऑर्डर किया जाए।

मैंने उस ऑर्डर को प्रस्तुत करने के बाहर एक फ़ंक्शन करने का प्रयास किया है और इसे घटक में शामिल किया है लेकिन यह सही ढंग से बढ़ नहीं रहा है।

orderBy() {
        let data = this.state;
        data.data.sort((a, b) => {
return a.published_on - b.published_on
}).map((data) => {
return data;
})
    }

render() {
        const { loading, data } = this.state;

        return (
            <div className="list">
                <Table rowKey="ref" loading={loading} dataSource={data.data} size="large" />
            </div>
        );
    }

मैं चाहता हूं कि तालिका घटक data.data.published_on द्वारा लोडिंग पर ऑर्डर किया जाए।

रिएक्ट में ऐसा करने का सही तरीका क्या है?

0
Simon 29 अक्टूबर 2019, 13:37

1 उत्तर

सबसे बढ़िया उत्तर

1) आप फ़ंक्शन से कुछ भी वापस नहीं कर रहे हैं।

2) चूंकि आप वर्ग घटकों का उपयोग कर रहे हैं, इसलिए आपको इसे this.orderBy से कॉल करना होगा

3) राज्य से data हथियाने के बजाय इसे फ़ंक्शन में पास करें:

orderBy(data) {
  return data.sort((a, b) => a.published_on - b.published_on);
}

render() {
  const { loading, data } = this.state;

  return (
    <div className="list">
      <Table rowKey="ref" loading={loading} dataSource={this.orderBy(data.data)} size="large" />
    </div>
  );
}
0
Andy 29 अक्टूबर 2019, 11:03