Chủ đề của Tích hợp ứng dụng trang đơn với Spring Boot - Integrate single page application with Spring Boot

SBA301 - Chương 2: React nền tảng — JSX, component, props, Virtual DOM

Những viên gạch đầu tiên của React: JSX là phần mở rộng cú pháp của JavaScript, cách nhúng biến bằng dấu ngoặc nhọn, cách truyền props từ component cha xuống con và trả dữ liệu ngược lên bằng hàm callback. Giải thích Virtual DOM và vì sao nó giúp cập nhật giao diện nhanh hơn thao tác trực tiếp lên DOM thật, vai trò của key trong danh sách, React Fragment để gói nhiều phần tử mà không sinh thêm nút DOM, kết xuất có điều kiện, cùng bộ component dựng sẵn React-Bootstrap và ý nghĩa của responsive.

Xem danh sách câu hỏi20 câu hỏi100% có giải thích

Bắt đầu bằng Chế độ học nếu bạn muốn đáp án và giải thích hiện ngay sau mỗi câu — không bấm giờ, dừng lúc nào cũng được. Chọn Thi thử khi muốn biết mình đang ở đâu: có bấm giờ, chấm điểm ở cuối, và giải thích chỉ mở sau khi nộp.

Học ngân hàng câu hỏi của chủ đề

Luyện tập theo chủ đề này

20Câu hỏi hiện có

Câu hỏi của chủ đề

20/20 câuHết danh sách
1What is ReactJS primarily used for?4 lựa chọnTrung bình50% trả lời đúng
ACreating user interfaces
BManaging relational databases
COperating systems
DFile system operations
Lời giải
ReactJS là một thư viện JavaScript được sử dụng chủ yếu để tạo ra giao diện người dùng (UI) cho các ứng dụng web. Nó cho phép bạn xây dựng các thành phần UI độc lập và tái sử dụng chúng trong ứng dụng của mình. Điều này giúp tăng tốc độ phát triển và giảm thiểu lỗi. Ngoài ra, ReactJS cũng cung cấp các tính năng như state và props để quản lý dữ liệu và giao tiếp giữa các thành phần. Nó cũng hỗ trợ các tính năng như virtual DOM để cải thiện hiệu suất và giảm thiểu tải trên máy chủ. Tóm lại, ReactJS là một công cụ mạnh mẽ để tạo ra các giao diện người dùng động và tương tác cho các ứng dụng web.
Mở trang câu hỏi này →
2What is the benefit of using React's Virtual DOM?4 lựa chọnDễ100% trả lời đúng
AImproved database performance
BFaster UI updates by minimizing direct DOM manipulation
CEnhanced server security
DSimplified network configuration
Lời giải
Virtual DOM của React giúp cải thiện hiệu suất của ứng dụng web bằng cách tối ưu hóa quá trình cập nhật giao diện người dùng. Khi thay đổi trạng thái ứng dụng, React sẽ tạo một bản sao ảo của DOM (Virtual DOM) và so sánh nó với bản sao ảo trước đó. Nếu có sự khác biệt, React sẽ chỉ cập nhật các phần của DOM thực tế thay vì cập nhật toàn bộ DOM. Điều này giúp giảm thiểu số lần truy cập vào DOM thực tế, từ đó cải thiện hiệu suất của ứng dụng. Ngoài ra, Virtual DOM cũng giúp giảm thiểu số lần render lại giao diện người dùng, từ đó cải thiện tốc độ phản hồi của ứng dụng.
Mở trang câu hỏi này →
3Which of the following is a core feature of React?4 lựa chọnTrung bình67% trả lời đúng
ATwo-way data binding
BVirtual DOM
CServer-side rendering only
DSQL database integration
Lời giải
React là một thư viện JavaScript được sử dụng để xây dựng các ứng dụng web. Một trong những tính năng cốt lõi của React là Virtual DOM. Virtual DOM là một bản sao ảo của DOM thực tế, giúp React có thể cập nhật và render lại các phần tử DOM một cách nhanh chóng và hiệu quả. Khi dữ liệu thay đổi, React sẽ tạo ra một bản sao mới của Virtual DOM và so sánh nó với bản sao cũ. Nếu có sự khác biệt, React sẽ chỉ cập nhật các phần tử cần thiết thay vì cập nhật toàn bộ DOM. Điều này giúp tăng tốc độ render và cải thiện hiệu suất của ứng dụng. Ngoài ra, Virtual DOM cũng giúp React có thể dễ dàng quản lý và cập nhật các trạng thái của ứng dụng.
Mở trang câu hỏi này →
4Which of the following is NOT a valid way to handle events in React?4 lựa chọnDễ71% trả lời đúng
AonClick={handleClick}
BonClick={handleClick()}
ConClick={() => handleClick()}
DonClick={(e) => handleClick(e)}
Lời giải
Trong React, cách xử lý sự kiện được thực hiện bằng cách sử dụng các thuộc tính đặc biệt như onClick, onMouseOver, v.v. Có một số cách để gọi hàm xử lý sự kiện, nhưng không phải tất cả đều hợp lệ. Ví dụ, bạn có thể gọi hàm xử lý sự kiện bằng cách sử dụng biểu thức lambda như onClick={() => handleClick()} hoặc bằng cách truyền tham số vào hàm xử lý sự kiện như onClick={(e) => handleClick(e)}. Tuy nhiên, cách không hợp lệ là gọi hàm xử lý sự kiện ngay lập tức như onClick={handleClick()}.
Mở trang câu hỏi này →
5In JSX, how do you add a JavaScript variable to a rendered element?4 lựa chọnDễ100% trả lời đúng
AUsing double quotes: "variable"
BUsing angle brackets: <variable>
CUsing curly braces: {variable}
DUsing parentheses: (variable)
Lời giải

Trong JSX, để thêm một biến JavaScript vào một phần tử được rendered, bạn cần sử dụng dấu ngoặc nhọn {variable}. Điều này cho phép bạn truy cập vào giá trị của biến và hiển thị nó trong phần tử. Ví dụ:

Lời giải
<div>{
  x
}
</div>

sẽ hiển thị giá trị của biến x. Sử dụng dấu ngoặc nhọn là cách phổ biến và được khuyến khích để thêm biến JavaScript vào JSX.

Mở trang câu hỏi này →
6What does the "responsive" aspect of React-Bootstrap mean?4 lựa chọnDễ100% trả lời đúng
AComponents automatically adjust their appearance based on screen size.
BComponents can only be used on mobile devices.
CComponents require manual adjustment for each screen size.
DComponents primarily handle database interactions.
Lời giải
Khái niệm 'đáp ứng' trong React-Bootstrap ám chỉ khả năng tự động điều chỉnh hình thức của các thành phần dựa trên kích thước màn hình. Điều này có nghĩa là các thành phần sẽ tự động thay đổi kích thước, bố cục và thiết kế để phù hợp với màn hình di động, máy tính bảng hoặc màn hình máy tính để bàn. Điều này giúp đảm bảo trải nghiệm người dùng mượt mà và thống nhất trên mọi thiết bị. Ví dụ, một nút bấm có thể được thiết kế để có kích thước lớn hơn trên màn hình máy tính để bàn và nhỏ hơn trên màn hình di động. Tính năng này giúp giảm thiểu việc phải viết mã thủ công để điều chỉnh kích thước và thiết kế của các thành phần trên mỗi thiết bị.
Mở trang câu hỏi này →
ATo replace JavaScript entirely.
BTo provide pre-built, responsive UI components.
CTo manage server-side logic.
DTo create database queries.
Lời giải
React-Bootstrap thường được sử dụng trong các dự án React vì nó cung cấp các thành phần UI có thể điều chỉnh kích thước và tương tác được. Nó cho phép các nhà phát triển tạo ra các ứng dụng có giao diện người dùng thân thiện và dễ sử dụng. Các thành phần UI được cung cấp bởi React-Bootstrap bao gồm các yếu tố như nút bấm, hộp văn bản, danh sách và nhiều hơn nữa. Điều này giúp giảm thiểu thời gian và công sức cần thiết để xây dựng các ứng dụng React từ đầu.
Mở trang câu hỏi này →
8Which of the following is a React-Bootstrap component?4 lựa chọnTrung bình50% trả lời đúng
A<Button>
B<Service>
C<Router>
D<Data>
Lời giải

Câu hỏi này yêu cầu bạn chọn thành phần React-Bootstrap. Thành phần React-Bootstrap là các thành phần được xây dựng trên cơ sở React và được sử dụng để tạo ra các ứng dụng web có giao diện người dùng thân thiện. Trong các lựa chọn, <Button> là một thành phần React-Bootstrap được sử dụng để tạo ra các nút bấm. <Service> không phải là một thành phần React-Bootstrap, mà có thể là một dịch vụ hoặc một module trong ứng dụng. <Router> là một thành phần trong React Router, không phải là React-Bootstrap. <Data> không phải là một thành phần React-Bootstrap, mà là dữ liệu trong ứng dụng. Vì vậy, câu trả lời đúng là <Button>.

Mở trang câu hỏi này →
9What does "unidirectional data flow" in React mean?4 lựa chọnTrung bình67% trả lời đúng
AData flows only from server to client
BData is shared globally across all components
CData flows from parent to child via props
DData flows only from child to parent
Lời giải
Trong React, 'unidirectional data flow' ám chỉ một cách thức truyền dữ liệu một chiều từ cha sang con thông qua props. Điều này có nghĩa là dữ liệu sẽ được truyền từ một thành phần cha sang thành phần con, và không thể truyền ngược lại từ con sang cha. Điều này giúp dễ dàng theo dõi và quản lý dữ liệu trong ứng dụng, giảm thiểu sự phức tạp và lỗi. Ngoài ra, cách thức này cũng giúp đảm bảo tính nhất quán và bảo mật của dữ liệu. Khi sử dụng unidirectional data flow, các thành phần con sẽ không thể tự do thay đổi dữ liệu mà không thông báo cho thành phần cha, giúp duy trì trạng thái ứng dụng một cách chính xác.
Mở trang câu hỏi này →
A<Child prop=value />
B<Child {prop} />
CChild.prop = value
Dprop.Child = value
Lời giải

Trong React, để truyền props từ cha sang con, chúng ta sử dụng cú pháp đặc biệt. Câu trả lời đúng là <Child prop=value />, trong đó prop là tên của thuộc tính và value là giá trị mà chúng ta muốn truyền. Ví dụ, nếu chúng ta muốn truyền một chuỗi 'Xin chào' sang một thành phần con, chúng ta sẽ sử dụng cú pháp <Child message='Xin chào' />. Khi đó, thành phần con có thể sử dụng props để truy cập vào giá trị 'Xin chào'. Điều này giúp chúng ta dễ dàng chia sẻ dữ liệu giữa các thành phần trong ứng dụng React.

Mở trang câu hỏi này →
11What is JSX in React?4 lựa chọnDễ83% trả lời đúng
AA programming language
BA template engine
CA syntax extension for JavaScript
DA CSS preprocessor
Lời giải
JSX là một phần mở rộng ngữ nghĩa cho JavaScript trong framework React. Nó cho phép bạn viết mã HTML và JavaScript trong cùng một tệp, tạo nên một giao diện người dùng động và dễ dàng quản lý. JSX được sử dụng để tạo ra các thành phần UI trong ứng dụng React, giúp bạn có thể tái sử dụng mã và tăng hiệu suất phát triển. Khi bạn sử dụng JSX, bạn có thể viết mã như một tệp HTML thông thường, nhưng với các thuộc tính và phương thức đặc biệt của JavaScript. Điều này giúp bạn có thể dễ dàng tạo ra các giao diện người dùng phức tạp và tương tác mà không cần phải viết mã JavaScript thủ công.
Mở trang câu hỏi này →
12Which of the following is true about keys in React lists?4 lựa chọnDễ83% trả lời đúng
AKeys must be random numbers
BKeys help React identify which items changed
CKeys are required only for the first element
DKeys are the same as props
Lời giải
Trong React, các khóa (key) được sử dụng để xác định và theo dõi các phần tử trong danh sách. Khi danh sách được cập nhật, React sử dụng khóa để xác định phần tử nào đã thay đổi, thêm hoặc xóa. Điều này giúp React tối ưu hóa hiệu suất và đảm bảo rằng danh sách được cập nhật chính xác. Khóa không phải là một phần của dữ liệu thực tế mà là một giá trị duy nhất được gán cho mỗi phần tử trong danh sách. Nó không phải là một số ngẫu nhiên, cũng không phải là một thuộc tính (prop) của phần tử. Khóa giúp React xác định và theo dõi các phần tử trong danh sách, từ đó giúp tối ưu hóa hiệu suất và đảm bảo rằng danh sách được cập nhật chính xác.
Mở trang câu hỏi này →
13What is the purpose of React Fragment (<></>)?4 lựa chọnDễ100% trả lời đúng
AWrap multiple elements without adding extra DOM nodes
BReplace div tags in HTML
CCreate new component instances
DImprove routing
Lời giải
Trong React, Fragment (<></>) được sử dụng để chứa một nhóm các thành phần hoặc phần tử mà không cần thêm các nút DOM bổ sung. Điều này giúp giảm thiểu số lượng nút DOM trong ứng dụng, từ đó cải thiện hiệu suất và dễ dàng quản lý hơn. Fragment không có bất kỳ thuộc tính nào và không thể được sử dụng như một thành phần độc lập. Thay vào đó, nó được sử dụng để nhóm các thành phần khác nhau lại với nhau mà không cần thêm bất kỳ nút DOM nào. Ví dụ, nếu bạn muốn hiển thị một số thông tin trên cùng một dòng, bạn có thể sử dụng Fragment để nhóm các phần tử lại với nhau.
Mở trang câu hỏi này →
14In React, how do you conditionally render content?4 lựa chọnDễ80% trả lời đúng
AUsing if-else outside JSX
BUsing ternary operator or && in JSX
CUsing switch-case only
DReact does not support conditional rendering
Lời giải
Trong React, cách để render nội dung điều kiện là một câu hỏi thường gặp. Để trả lời câu hỏi này, chúng ta cần hiểu cách sử dụng điều kiện trong JSX. Trong JSX, chúng ta có thể sử dụng toán tử ba ngôi (ternary operator) hoặc toán tử AND (&&) để render nội dung điều kiện. Ví dụ, nếu chúng ta muốn render một đoạn văn bản nếu một biến là true, chúng ta có thể sử dụng toán tử ba ngôi như sau: { condition ? 'Nội dung khi true' : 'Nội dung khi false' }. Hoặc chúng ta có thể sử dụng toán tử AND như sau: { condition && 'Nội dung khi true' }. Điều này cho phép chúng ta render nội dung điều kiện một cách linh hoạt và dễ dàng.
Mở trang câu hỏi này →
15What is the virtual DOM in React?4 lựa chọnDễ100% trả lời đúng
AA browser feature
BAn actual copy of the DOM
CA lightweight copy of the real DOM used for performance
DA styling framework
Lời giải
Virtual DOM (DOM ảo) trong React là một khái niệm quan trọng giúp cải thiện hiệu suất của ứng dụng. Nó là một bản sao nhẹ nhàng của DOM thực tế, được sử dụng để tối ưu hóa quá trình render và cập nhật nội dung trên trang web. Khi dữ liệu thay đổi, React sẽ tạo ra một bản sao mới của DOM ảo, sau đó so sánh nó với bản sao cũ để xác định những phần cần được cập nhật. Điều này giúp giảm thiểu số lượng lần render và cập nhật DOM thực tế, từ đó cải thiện hiệu suất và tăng tốc độ tải trang. Ngoài ra, Virtual DOM cũng giúp bảo vệ ứng dụng khỏi những thay đổi không mong muốn trong DOM thực tế.
Mở trang câu hỏi này →
16Which method is used to pass data from child to parent in React?4 lựa chọnDễ100% trả lời đúng
AUsing props
BUsing callbacks passed from parent
CUsing context
DDirect variable reference
Lời giải
Trong React, phương pháp được sử dụng để truyền dữ liệu từ con sang cha là sử dụng props. Props là một tính chất độc lập của React, cho phép các thành phần con nhận dữ liệu từ thành phần cha mà không cần phải thay đổi trạng thái của thành phần cha. Tuy nhiên, trong một số trường hợp, chúng ta cần truyền dữ liệu từ con sang cha, và phương pháp này được gọi là sử dụng callbacks. Callbacks là các hàm được gọi khi một sự kiện xảy ra, và chúng ta có thể sử dụng chúng để truyền dữ liệu từ con sang cha. Ví dụ, khi một thành phần con được cập nhật, chúng ta có thể gọi một hàm callback được truyền từ thành phần cha để cập nhật dữ liệu của thành phần cha.
Mở trang câu hỏi này →
17Which code snippet correctly creates a React-Bootstrap form select control?4 lựa chọnTrung bình67% trả lời đúng
A<Form.Select> <option>1</option> <option>2</option> </Form.Select>
B<Select> <option>1</option> <option>2</option> </Select>
C<Form.Dropdown> <option>1</option> <option>2</option> </Form.Dropdown>
D<Dropdown> <option>1</option> <option>2</option> </Dropdown>
Lời giải

Để tạo một form select control trong React-Bootstrap, bạn cần sử dụng thẻ <Form.Select>. Thẻ này sẽ tạo một lựa chọn dropdown cho người dùng. Ví dụ, bạn muốn tạo một form select với các lựa chọn là 1 và 2, bạn có thể sử dụng mã sau:

Lời giải
<Form.Select>
  <option>1</option>
  <option>2</option>
</Form.Select>

. Điều này sẽ tạo một form select với hai lựa chọn là 1 và 2. Ngoài ra, bạn cũng có thể sử dụng các thẻ khác như <Select>, <Form.Dropdown>, <Dropdown> nhưng chúng không phải là thẻ chính thức để tạo form select control trong React-Bootstrap.

Mở trang câu hỏi này →
18How do you create navigation links in a React-Bootstrap Navbar?4 lựa chọnDễ100% trả lời đúng
A<NavLink>
B<Nav Link>
C<Link>
D<Anchor>
Lời giải

Để tạo liên kết điều hướng trong Navbar của React-Bootstrap, bạn cần sử dụng thẻ <NavLink>. Thẻ này cho phép bạn tạo liên kết điều hướng với các thuộc tính như href, active, exact, và nhiều thuộc tính khác. Ví dụ, bạn có thể sử dụng <NavLink> như sau: import { NavLink } from 'react-bootstrap'; <NavLink to="/home">Trang chủ</NavLink> Trong ví dụ trên, <NavLink> được sử dụng để tạo liên kết điều hướng đến trang chủ với đường dẫn /home. Ngoài ra, bạn cũng có thể sử dụng thuộc tính active để chỉ định liên kết hiện tại. <NavLink active to="/home">Trang chủ</NavLink> Tóm lại, <NavLink> là một phần quan trọng trong việc tạo liên kết điều hướng trong Navbar của React-Bootstrap.

Mở trang câu hỏi này →
19Which of the following is a valid JSX expression?4 lựa chọnTrung bình63% trả lời đúng
A<div class="my-class">Hello</div>
B<component style="my-style">World</component>
C<for (let i = 0; i < 5; i++)>Loop</for>
D<if (true) {}>
Lời giải

Trong JSX, các biểu thức hợp lệ phải tuân theo các quy tắc sau: - Các thẻ HTML phải được viết theo cú pháp mở và đóng đúng. - Các thuộc tính phải được viết theo cú pháp

Lời giải
<div class="my-class">. -

Các biểu thức JavaScript không được sử dụng trong JSX. - Các biểu thức JSX không được sử dụng trong JavaScript. - Các thẻ không được sử dụng trong JSX. Vậy, trong các lựa chọn trên, chỉ có "<div class="my-class">Hello</div> " là một biểu thức JSX hợp lệ.

Mở trang câu hỏi này →
20How do you show a success message alert in React-Bootstrap?4 lựa chọnTrung bình57% trả lời đúng
A<Alert type="success">Message</Alert>
B<Alert variant="success">Message</Alert>
C<Alert style="success">Message</Alert>
D<SuccessAlert>Message</SuccessAlert>
Lời giải

Để hiển thị thông báo thành công trong React-Bootstrap, bạn cần sử dụng thẻ Alert với thuộc tính variant được đặt thành 'success'. Ví dụ, bạn có thể sử dụng thẻ Alert như sau: <Alert variant="success">Message</Alert>. Điều này sẽ hiển thị một thông báo thành công với nội dung 'Message'. Ngoài ra, bạn cũng có thể sử dụng các thuộc tính khác như type hoặc style để thay đổi màu sắc hoặc kiểu dáng của thông báo, nhưng variant là thuộc tính được khuyến nghị sử dụng trong React-Bootstrap.

Mở trang câu hỏi này →

Đề có câu hỏi của chủ đề này

2 đề chứa ít nhất một câu thuộc chủ đề — mở đề để làm cả bộ, không chỉ từng câu.