Xin giúp đỡ chuyển Class React.Component sang Function

Xin chào các anh, chị, bạn.

Mình hiện tại đang cần chuyển class React.Component này sang Function, anh chị có thể giúp mình không ạ. Mình mới học React không rành cái này lắm :frowning:

import React from 'react';
import Pagination from './Pagination';

class App extends React.Component {
constructor() {
    super();

    // an example array of items to be paged
    var exampleItems = [...Array(150).keys()].map(i => ({ id: (i+1), name: 'Item ' + (i+1) }));

    this.state = {
        exampleItems: exampleItems,
        pageOfItems: []
    };

    // bind function in constructor instead of render (https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md)
    this.onChangePage = this.onChangePage.bind(this);
}

onChangePage(pageOfItems) {
    // update state with new page of items
    this.setState({ pageOfItems: pageOfItems });
}

render() {
    return (
        <div>
            <div className="container">
                <div className="text-center">
                    <h1>React - Pagination Example with logic like Google</h1>
                    {this.state.pageOfItems.map(item =>
                        <div key={item.id}>{item.name}</div>
                    )}
                    <Pagination items={this.state.exampleItems} onChangePage={this.onChangePage} />
                </div>
            </div>
            <hr />
            <div className="credits text-center">
                <p>
                    <a href="http://jasonwatmore.com/post/2017/03/14/react-pagination-example-with-logic-like-google" target="_top">React - Pagination Example with Logic like Google</a>
                </p>
                <p>
                    <a href="http://jasonwatmore.com" target="_top">JasonWatmore.com</a>
                </p>
            </div>
        </div>
    );
}
}

export default App;

Mình dùng Next.js nên thường dùng Export default function …() {}.

Cảm ơn rất rất nhiều ạ.

DNH không có văn hóa code giùm đâu nhé :D. Hiện nay bạn đã convert được phần nào rồi ? Bạn có thể post code lên đây mọi người sẽ giúp đỡ dễ hơn.
Để chuyển class sang function thì đầu tiên bạn phải hiểu cấu trúc của 1 component trong react bao gồm những gì, mốt số thứ tiêu biểu như:

  • Lifecycle hooks
  • State
  • Props
  • etc, …

Có rất nhiều bài viết trên mạng cũng hướng dẫn vấn đề này rồi

3 Likes

Okey. Cảm ơn bạn mình đã chuyển thành công

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?