2k1
  • Home
  • Programming
  • System
  • Design
  • Applications
  • Tech
No Result
View All Result
  • Login
2k1
  • Home
  • Programming
  • System
  • Design
  • Applications
  • Tech
No Result
View All Result
2k1
No Result
View All Result

Chạy ứng dụng react native đầu tiên của bạn

Nguyen Pham by Nguyen Pham
29/06/2023
in Blog
Reading Time: 11 mins read
A A
0

Hướng dẫn chạy ứng dụng react-native

React Native là một thư viện mã nguồn mở cho phép bạn xây dựng ứng dụng di động bằng JavaScript và sử dụng các thành phần giao diện người dùng (UI) bản địa. Để hiểu cấu trúc cơ bản của một ứng dụng React Native, bạn cần hiểu một số khái niệm cơ bản của React, như JSX, components, state và props. Nếu bạn đã biết React, bạn vẫn cần học thêm một số điều cụ thể của React Native, như các thành phần bản địa. Bài viết này sẽ hướng dẫn bạn các bước để tạo và chạy một ứng dụng React Native đơn giản.

Cài đặt môi trường phát triển

Để phát triển ứng dụng React Native, bạn cần cài đặt một số công cụ và phần mềm trên máy tính của bạn, bao gồm:

  • Node.js: là một môi trường chạy JavaScript bên ngoài trình duyệt. Bạn có thể tải Node.js từ đây.
  • npm hoặc yarn: là các công cụ quản lý gói cho JavaScript. Bạn có thể sử dụng npm (được cài đặt cùng với Node.js) hoặc yarn (có thể tải từ đây).
  • Expo CLI hoặc React Native CLI: là các công cụ dòng lệnh cho phép bạn khởi tạo, phát triển và xây dựng ứng dụng React Native. Bạn có thể chọn Expo CLI (dễ sử dụng hơn, nhưng có ít tính năng hơn) hoặc React Native CLI (có nhiều tính năng hơn, nhưng khó sử dụng hơn). Bạn có thể cài đặt Expo CLI bằng lệnh npm install -g expo-cli hoặc yarn global add expo-cli. Bạn có thể cài đặt React Native CLI bằng lệnh npm install -g react-native-cli hoặc yarn global add react-native-cli.
  • Máy ảo Android hoặc iOS: là các phần mềm giả lập thiết bị di động trên máy tính của bạn. Bạn có thể sử dụng máy ảo Android từ Android Studio hoặc máy ảo iOS từ Xcode. Bạn cũng có thể sử dụng thiết bị di động thật của bạn để chạy ứng dụng React Native, nhưng bạn cần cài đặt Expo Go app (nếu sử dụng Expo CLI) hoặc React Native app (nếu sử dụng React Native CLI) từ cửa hàng ứng dụng.

Tạo một ứng dụng React Native

Sau khi đã cài đặt xong môi trường phát triển, bạn có thể tạo một ứng dụng React Native mới bằng lệnh sau:

  • Nếu sử dụng Expo CLI: expo init <tên ứng dụng>
  • Nếu sử dụng React Native CLI: react-native init <tên ứng dụng>

Lệnh này sẽ tạo ra một thư mục mới với tên ứng dụng của bạn và các tệp tin cần thiết cho ứng dụng. Bạn có thể vào thư mục này bằng lệnh cd <tên ứng dụng>.

Chạy ứng dụng React Native

Để chạy ứng dụng React Native, bạn cần mở máy ảo Android hoặc iOS trên máy tính của bạn hoặc kết nối thiết bị di động của bạn với máy tính qua cáp USB. Sau đó, bạn có thể chạy lệnh sau trong thư mục ứng dụng:

  • Nếu sử dụng Expo CLI: expo start
  • Nếu sử dụng React Native CLI: react-native run-android hoặc react-native run-ios

Lệnh này sẽ khởi động một máy chủ phát triển và mở một trình duyệt web với giao diện Expo Dev Tools (nếu sử dụng Expo CLI) hoặc Metro Bundler (nếu sử dụng React Native CLI). Bạn có thể sử dụng các công cụ này để quản lý việc chạy ứng dụng trên các thiết bị khác nhau.

Nếu bạn sử dụng Expo CLI, bạn có thể quét mã QR trên trình duyệt web bằng Expo Go app trên thiết bị di động của bạn để mở ứng dụng. Bạn cũng có thể nhấn phím a để mở ứng dụng trên máy ảo Android hoặc phím i để mở ứng dụng trên máy ảo iOS.

Nếu bạn sử dụng React Native CLI, bạn có thể nhìn thấy ứng dụng đã được cài đặt và chạy trên máy ảo hoặc thiết bị di động của bạn.

Hiểu cơ bản về React Native

Ứng dụng React Native mới của bạn sẽ hiển thị một chữ \”Hello, world!\” trên màn hình. Đây là mã nguồn của ứng dụng:

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

const HelloWorldApp = () => {
  return (
    <View style={{ flex: 1, justifyContent: "center", alignItems: "center" }}>
      <Text>Hello, world!</Text>
    </View>
  );
}

export default HelloWorldApp;

Hãy phân tích mã nguồn này theo từng phần:

  • Dòng đầu tiên import React from 'react'; là để nhập thư viện React vào ứng dụng. React là nền tảng cho React Native, cho phép bạn sử dụng JSX, một cú pháp giống HTML để viết giao diện người dùng bằng JavaScript.
  • Dòng thứ hai import { Text, View } from 'react-native'; là để nhập hai thành phần bản địa từ react-native. Text là một thành phần cho phép hiển thị một đoạn văn bản, còn View là một thành phần cho phép hiển thị một khối chứa các thành phần khác.
  • Dòng thứ ba const HelloWorldApp = () => { là để định nghĩa một hàm tên là HelloWorldApp. Hàm này là một functional component, một khái niệm quan trọng trong React. Một component là một đơn vị giao diện người dùng có thể tái sử dụng và kết hợp với nhau. Một functional component là một component được viết dưới dạng một hàm JavaScript, nhận vào một đối số là props và trả về JSX.
  • Dòng thứ tư đến thứ bảy là nội dung của hàm HelloWorldApp.


(1) Learn the Basics · React Native. https://reactnative.dev/docs/tutorial.
(2) Introduction · React Native. https://reactnative.dev/docs/getting-started.
(3) React Fundamentals · React Native. https://reactnative.dev/docs/intro-react.

Đây là phần tiếp theo của bản nháp blog hướng dẫn chạy ứng dụng react-native của tôi.

Sử dụng các thành phần React Native

React Native cung cấp cho bạn một số thành phần bản địa sẵn sàng để bạn sử dụng trong ứng dụng của mình. Các thành phần này được ánh xạ trực tiếp đến các thành phần UI bản địa trên cả hai nền tảng Android và iOS. Các thành phần này được tối ưu hóa về hiệu năng và mang lại trải nghiệm người dùng nhất quán trên các nền tảng khác nhau. React Native cũng cho phép bạn tạo các thành phần tùy chỉnh theo nhu cầu của ứng dụng. Bạn có thể tìm thấy tất cả các thành phần bản địa của React Native trong tài liệu.

Các thành phần bản địa của React Native được định nghĩa dưới dạng các hàm hoặc các lớp JavaScript. Khi chạy, React Native sẽ tạo ra các view Android và iOS tương ứng cho các thành phần đó, khiến cho ứng dụng React Native trông, cảm nhận và hoạt động như bất kỳ ứng dụng nào khác. Chúng ta gọi những thành phần này là Native Components.

React Native có nhiều Native Components cho mọi mục đích, từ các điều khiển đến các chỉ báo hoạt động. Bạn có thể tìm thấy chúng được liệt kê trong phần Core Components and APIs. Bạn sẽ làm việc chủ yếu với những Native Components sau:

  • View: là thành phần cơ bản nhất để xây dựng giao diện người dùng. View là một khối chứa có thể hỗ trợ bố cục với flexbox, kiểu, một số xử lý chạm và các điều khiển trợ năng.
  • Text: là một thành phần để hiển thị văn bản. Bạn có thể định dạng, lồng ghép và xử lý sự kiện chạm cho văn bản.
  • Image: là một thành phần để hiển thị các loại hình ảnh khác nhau, từ địa chỉ URL, tệp tin cục bộ hoặc biểu tượng vector.
  • TextInput: là một thành phần để nhập văn bản vào ứng dụng qua bàn phím. Bạn có thể kiểm soát giá trị, kiểu và sự kiện của TextInput.
  • ScrollView: là một khối chứa có thể cuộn được và có thể chứa nhiều thành phần và view khác nhau. Bạn có thể kiểm soát hướng cuộn, hiệu ứng kéo để làm mới và hiệu suất của ScrollView.
  • StyleSheet: là một lớp trừu tượng giống như CSS stylesheets, cho phép bạn định nghĩa kiểu cho các thành phần React Native.

Trong ví dụ sau, chúng ta sẽ sử dụng một số Native Components để tạo ra một giao diện người dùng đơn giản:

import React from 'react';
import { View, Text, Image, TextInput, ScrollView, StyleSheet } from 'react-native';

const App = () => {
  return (
    <View style={styles.container}>
      <Text style={styles.title}>Welcome to React Native!</Text>
      <Image style={styles.logo} source={require('./logo.png')} />
      <TextInput style={styles.input} placeholder="Enter your name" />
      <ScrollView style={styles.scroll}>
        <Text style={styles.text}>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed quis eros vitae leo tincidunt lacinia. Fusce quis lacus ut nisi tincidunt sagittis. Morbi vitae nisl id leo ullamcorper blandit. Donec id lacus in lorem luctus tincidunt. Sed quis augue at lorem malesuada aliquet. Cras quis semper justo, sed aliquam sapien. Ut sit amet massa auctor, mattis leo sed, ultrices nisl. Curabitur euismod, augue vitae ultrices consequat, nisi massa ullamcorper nunc, sit amet consequat leo quam a tellus.</Text>
        <Text style={styles.text}>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed quis eros vitae leo tincidunt lacinia. Fusce quis lacus ut nisi tincidunt sagittis. Morbi vitae nisl id leo ullamcorper blandit. Donec id lacus in lorem luctus tincidunt. Sed quis augue at lorem malesuada aliquet. Cras quis semper justo, sed aliquam sapien. Ut sit amet massa auctor, mattis leo sed, ultrices nisl. Curabitur euismod, augue vitae ultrices consequat, nisi massa ullamcorper nunc, sit amet consequat leo quam a tellus.</Text>
        <Text style={styles.text}>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed quis eros vitae leo tincidunt lacinia. Fusce quis lacus ut nisi tincidunt sagittis. Morbi vitae nisl id leo ullamcorper blandit. Donec id lacus in lorem luctus tincidunt. Sed quis augue at lorem malesuada aliquet. Cras quis semper justo, sed aliquam sapien. Ut sit amet massa auctor, mattis leo sed, ultrices nisl. Curabitur euismod, augue vitae ultrices consequat, nisi massa ullamcorper nunc, sit amet consequat leo quam a tellus.</Text>
      </ScrollView>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    padding: 20,
  },
  title: {
    fontSize: 24,
    fontWeight: 'bold',
    color: '#000',
    margin: 10,
  },
  logo: {
    width: 100,
    height: 100,
    resizeMode: 'contain',
  },
  input: {
    width: '80%',
    height: 40,
    borderColor: '#000',
    borderWidth: 1,
    borderRadius: 5,
    margin: 10,
    padding: 10,
  },
  scroll: {
    width: '80%',
    height: '50%',
  },
  text: {
    fontSize: 16,
    color: '#000',
    textAlign: 'justify',
    margin: 10,
  },
});

export default App;

Bạn có thể thấy rằng các thành phần React Native được sử dụng để tạo ra các phần tử giao diện người dùng như văn bản, hình ảnh, khung nhập liệu và khối cuộn.

Trong phần tiếp theo, chúng ta sẽ học về cách sử dụng state và props để quản lý dữ liệu và hành vi của các thành phần React Native.

Source:
(1) All about React Native – How does it work and when to use it. https://clouddevs.com/react/native/.
(2) Core Components and APIs · React Native. https://reactnative.dev/docs/components-and-apis.
(3) Core Components and Native Components · React Native. https://reactnative.dev/docs/intro-react-native-components.
(4) 15+ React Native Component Libraries You Should Know in 2023 – CodeinWP. https://www.codeinwp.com/blog/react-native-component-libraries/.
(5) How to import components in React Native – GeeksforGeeks. https://www.geeksforgeeks.org/how-to-import-components-in-react-native/.

Previous Post

Xây dựng todo app với smartcontract

Next Post

Giới thiệu về đa luồng trong ngôn ngữ lập trình go có code minh họa.

Related Posts

Blog

Facebook, Instagram bất ngờ sập trên diện rộng, liên tục đăng xuất người dùng!

by Nguyen Pham
05/03/2024
Xây dựng todo app với smartcontract
Blog

Web3 là gì?

by Nguyen Pham
30/06/2023
Giới thiệu về ChatGPT
Blog

Cách tạo tài khoản ChatGPT

by Nguyen Pham
16/05/2023
Blog

Tạo ứng dụng pomodoro trong NextJS

by Nguyen Pham
10/06/2021
Blog

Làm thế nào để tìm lại những trang web hay mà mình đã từng truy cập

by Nguyen Pham
06/05/2021
Blog

Cách tạo một phần mềm quản lý tài chính mà không cần code.

by Nguyen Pham
16/11/2022
Load More
Next Post
Xây dựng todo app với smartcontract

Giới thiệu về đa luồng trong ngôn ngữ lập trình go có code minh họa.

Please login to join discussion
Stock

Phân tích mã cổ phiếu VCB

by Nguyen Pham
26/04/2025
0

Phân tích mã cổ phiếu VCB (Ngân hàng TMCP Ngoại thương Việt Nam - Vietcombank) 1. Tổng quan về Vietcombank...

Read more

Facebook, Instagram bất ngờ sập trên diện rộng, liên tục đăng xuất người dùng!

05/03/2024
Xây dựng todo app với smartcontract

Web3 là gì?

30/06/2023
Xây dựng todo app với smartcontract

Giới thiệu về đa luồng trong ngôn ngữ lập trình go có code minh họa.

29/06/2023

Chạy ứng dụng react native đầu tiên của bạn

29/06/2023

@2021 2k1.org [email protected]

No Result
View All Result
  • Home
  • Review
  • Applications
  • Computers
  • Gaming
  • Microsoft

© 2021 NData

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In