Latest Post

Tăng thứ hạng và truy cập tự nhiên với 10 phương pháp SEO hay nhất Kiếm Tiền Online (mmo): Khái Niệm và Các Hình Thức Phổ Biến

Để nắm vững một kiến thức mới, đặc biệt là trong lĩnh vực lập trình, việc thực hành có vai trò quan trọng không kém phần so với việc hiểu lý thuyết. Nó giúp bạn áp dụng những kiến thức đã học vào thực tế và trở thành chuyên gia trong lĩnh vực đó.

Trong bài viết này, chúng ta sẽ khám phá 12 bài tập thực hành, giúp bạn rèn luyện kỹ năng sử dụng React Native trong các dự án cụ thể. Đây là cơ hội tuyệt vời để áp dụng những kiến thức đã thu thập và xây dựng sự tự tin khi làm việc với nền tảng này.

Chờ chút: Nếu bạn chưa biết React Native là gì, mời tham khảo bài viết về: React Native:

Các bài tập thực hành dưới đây đều độc đáo và chi tiết, cung cấp kiến thức chặt chẽ từ mức cơ bản đến nâng cao về React Native. Mình dự định sẽ thêm vào danh sách các bài tập mới trong tương lai, vì vậy đừng quên lưu trữ bài viết này để cập nhật những thông tin mới nhất.

Bài 1: Hello, World

Đây là bài tập cơ bản của cơ bản rồi. Hầu như ai khi bắt đầu học một ngôn ngữ lập trình, công nghệ nào mưới đều thực hành ít nhất một lần.

Yêu cầu: Xây dựng một màn hình có một hình vuông trên nền màu trắng. Bên trong hình vuông có dòng chữ: “Hello, world”

bai-1-hello-world

Bài 2: Bắt sự kiện khi touch vào button

Một ứng dụng sẽ trở nên hoàn toàn không hữu ích nếu người dùng không thể tương tác với nó. Trong số các hoạt động tương tác, một trong những hành động phổ biến nhất là việc chạm vào các nút (button) trên giao diện.

bai-2-capture-tap

Bài tập thực hành là tạo một màn hình có một button. Khi người dùng touch vào nút này thì hiện ra thông báo alert với dòng chữ “Hello”

Bài 3: Tạo component tùy chỉnh

Ở bài tập trước, chúng ta đã tìm hiểu cách sử dụng một component có sẵn trong React Native. Tuy nhiên, đôi khi component có sẵn không đáp ứng đúng theo yêu cầu UX mà chúng ta mong muốn. Trong tình huống này, chúng ta cần tự tạo một component mới.

Bài tập tiếp theo của chúng ta là tạo một button tùy chỉnh với 2 thuộc tính props: onPress để xử lý sự kiện và text để hiển thị nhãn.

ể thực hiện bài tập này, chúng ta có thể sử dụng TouchableOpacity, một component cho phép xây dựng các phần tử có thể nhấn được, kết hợp với Text để hiển thị nội dung của button. Chúng ta có thể truyền các giá trị của onPress và text qua props để làm cho button linh hoạt và tái sử dụng được.

Dưới đây là một đoạn mã minh họa:

import React from 'react';
import { TouchableOpacity, Text } from 'react-native';

const CustomButton = ({ onPress, text }) => {
  return (
    <TouchableOpacity onPress={onPress}>
      <Text>{text}</Text>
    </TouchableOpacity>
  );
};

export default CustomButton;
bai-3-custom-component

Bài 4: State & Props

Bài thực hành trước, bạn đã sử dụng tới props rồi, một cách thức truyền dữ liệu từ bên ngoài vào trong component. Tuy nhiên, còn thiếu một phần vô cùng quan trọng khác nữa, đó là State. Đặc điểm của State đó là mỗi khi nó thay đổi thì giao diện người dùng cũng sẽ tự động thay đổi theo.

Bài tập: Sử dụng State để đếm số lần người dùng touch vào button và hiển thị số lần touch đó ra màn hình.

bai-4-props-state

Bài 5: Styling

Nếu đã làm việc thành thạo với CSS thì việc style trong React Native cũng sẽ chỉ như “muỗi” với bạn mà thôi. Bởi vì style trong React Native cũng tuân theo các nguyên tắc tương tự với CSS trong web.

Bài tập: Tạo 2 hình vuông được căn chỉnh giữa màn hình và sắp xếp theo chiều dọc và chiều ngang. Mỗi ô vuông là một màu duy nhất.

bai-5-styling

Bài 6: Scrollable Content

Hiếm khi tất cả nội dung mà bạn muốn hiển thị lại vừa khít màn hình điện thoại của người dùng. Đấy là chưa kể, điện thoại có vô vàn kích thước to nhỏ khác nhau. Do vậy, phương án an toàn nhất đó là sử dụng thanh cuộn.

Bài tập: Tạo một danh sách 15 ô vuông có thể cuộn được.

Gợi ý: Sử dụng ScrollView

bài tập react native bai-6-scrollable-content

Bài 7: Xây dựng form nhập liệu

Với các ứng dụng web, bạn thường sử dụng form để người dùng có thể gửi thông tin tới server, ví dụ như đăng ký tài khoản, gửi liên hệ,… Trong React Native cũng tương tự, TextInput là component để người dùng có thể nhập liệu.

Bài tập: Thiết kế màn hình cho phép người dùng nhập Họ và tên, bên dưới là một nút. Khi nhấn nút này thì sẽ hiển thị alert với dòng chữ xin chào người vừa nhập.

Gợi ý: Sử dụng TextInput component.

bai-7-form-input

Bài 8: Sử dụng Flatlist

Khi bạn có một danh sách dữ liệu rất dài muốn hiển thị ra màn hình, ScrollView không thể đáp ứng được yêu cầu. Đây là lúc bạn nghĩ tới sử dụng Flatlist.

Bài tập: Render một danh sách tên nhân viên, sử dụng Flatlist

bai-8-flatlist

Bài 9: Làm việc với API

Ứng dụng mobile rất ít khi chỉ làm việc trên local của điện thoại. Thông thường, các ứng dụng sẽ cần tương tác với server để mở rộng tính năng.

Bài tập: Lấy dữ liệu từ https://randomuser.me/api/?results=100&inc=name sau đó hiển thị danh sách ra màn hình.

bai-9-working-api

Bài 10: Component Lifecycle

Do tính chất đặc thù của các ứng dụng điện thoại, người dùng di chuyển sử dụng qua lại giữa các ứng dụng rất nhiều. Do đó, hiểu và làm việc thuần thục với vòng đời của component trong React Native là vô cùng quan trọng.

Bài tập: Tạo một màn hình và đếm số lần người dùng thoát và quay trở lại màn hình đó.

bài tập react native bai-10-component-lifecycle

Tạm chốt danh sách bài tập ở đây. Mình sẽ tiếp tục cập nhật thêm, các bạn đón đọc nhé.

Tải toàn bộ mã nguồn đáp án tại đây:

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *