You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/reference/react/useDebugValue.md
+20-20Lines changed: 20 additions & 20 deletions
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ title: useDebugValue
4
4
5
5
<Intro>
6
6
7
-
`useDebugValue`is a React Hook that lets you add a label to a custom Hook in [React DevTools.](/learn/react-developer-tools)
7
+
`useDebugValue`là một React Hook để giúp thêm nhãn (label) vào một custom Hook khi hiển thị trên [Công cụ phát triển React (React DevTools).](/learn/react-developer-tools)
Call`useDebugValue`at the top level of your [custom Hook](/learn/reusing-logic-with-custom-hooks) to display a readable debug value:
23
+
Gọi`useDebugValue`ở cấp cao nhất trong [custom Hook](/learn/reusing-logic-with-custom-hooks) của bạn để hiển thị một giá trị debug (debug value) dễ đọc:
24
24
25
25
```js
26
26
import { useDebugValue } from'react';
@@ -32,22 +32,22 @@ function useOnlineStatus() {
32
32
}
33
33
```
34
34
35
-
[See more examples below.](#usage)
35
+
[Xem thêm các ví dụ phía dưới.](#usage)
36
36
37
-
#### Parameters {/*parameters*/}
37
+
#### Các tham số (Parameters) {/*parameters*/}
38
38
39
-
* `value`: The value you want to display in React DevTools. It can have any type.
40
-
* **optional** `format`: A formatting function. When the component is inspected, React DevTools will call the formatting function with the `value` as the argument, and then display the returned formatted value (which may have any type). If you don't specify the formatting function, the original `value`itself will be displayed.
39
+
* `value`: Giá trị bạn muốn hiển thị trên React DevTools. Giá trị này có thể thuộc bất cứ kiểu nào.
40
+
* `format` (**không bắt buộc**): Là một hàm dùng để định dạng. Khi bạn kiểm tra các thành phần (component), React DevTools sẽ gọi hàm này với đối số là giá trị của `value`, sau đó sẽ hiển thị giá trị sau khi định dạng (giá trị sau khi định dạng cũng có thể thuộc bất cứ kiểu nào). Nếu bạn không thiết lập hàm định dạng, giá trị ban đầu của `value`sẽ được hiển thị.
41
41
42
-
#### Returns {/*returns*/}
42
+
#### Giá trị trả về (Returns) {/*returns*/}
43
43
44
-
`useDebugValue`does not return anything.
44
+
`useDebugValue`không trả về bất cứ giá trị nào.
45
45
46
-
## Usage {/*usage*/}
46
+
## Cách sử dụng {/*usage*/}
47
47
48
-
### Adding a label to a custom Hook {/*adding-a-label-to-a-custom-hook*/}
48
+
### Thêm label cho custom Hook {/*adding-a-label-to-a-custom-hook*/}
49
49
50
-
Call`useDebugValue`at the top level of your [custom Hook](/learn/reusing-logic-with-custom-hooks) to display a readable <CodeStep step={1}>debug value</CodeStep> for [React DevTools.](/learn/react-developer-tools)
50
+
Gọi`useDebugValue`ở cấp cao nhất trong [custom Hook](/learn/reusing-logic-with-custom-hooks) của bạn để hiển thị một <CodeStep step={1}>debug value</CodeStep> dễ đọc trên [React DevTools.](/learn/react-developer-tools)
51
51
52
52
```js [[1, 5, "isOnline ? 'Online' : 'Offline'"]]
53
53
import { useDebugValue } from'react';
@@ -59,11 +59,11 @@ function useOnlineStatus() {
59
59
}
60
60
```
61
61
62
-
This gives components calling `useOnlineStatus` a label like `OnlineStatus:"Online"`when you inspect them:
62
+
Việc này sẽ gắn thêm label như là `OnlineStatus:"Online"`cho các component gọi `useOnlineStatus` khi bạn kiểm tra chúng:
63
63
64
-

64
+

65
65
66
-
Without the `useDebugValue` call, only the underlying data (in this example, `true`) would be displayed.
66
+
Nếu không gọi `useDebugValue`, sẽ chỉ có dữ liệu cơ bản (như ví dụ này là `true`) được hiển thị.
67
67
68
68
<Sandpack>
69
69
@@ -103,20 +103,20 @@ function subscribe(callback) {
103
103
104
104
<Note>
105
105
106
-
Don't add debug values to every custom Hook. It's most valuable for custom Hooks that are part of shared libraries and that have a complex internal data structure that's difficult to inspect.
106
+
Đừng lạm dụng debug value cho tất cả các custom Hook. Nó có giá trị nhất khi sử dụng cho những custom Hook là một phần của các thư viện dùng chung và có cấu trúc dữ liệu nội bội phức tạp gây khó khăn cho việc kiểm tra.
107
107
108
108
</Note>
109
109
110
110
---
111
111
112
-
### Deferring formatting of a debug value {/*deferring-formatting-of-a-debug-value*/}
112
+
### Trì hoãn việc định dạng một debug value {/*deferring-formatting-of-a-debug-value*/}
113
113
114
-
You can also pass a formatting function as the second argument to`useDebugValue`:
114
+
Bạn có thể đưa vào một hàm định dạng làm đối số thứ hai cho`useDebugValue`:
Your formatting function will receive the <CodeStep step={1}>debug value</CodeStep> as a parameter and should return a <CodeStep step={2}>formatted display value</CodeStep>. When your component is inspected, React DevTools will call this function and display its result.
120
+
Hàm định dạng của bạn sẽ nhận được tham số là <CodeStep step={1}>debug value</CodeStep> và cần trả về một <CodeStep step={2}>giá trị đã định dạng để hiển thị (formatted display value)</CodeStep>. Chỉ khi nào component của bạn được kiểm tra, React DevTools sẽ gọi hàm này và hiển thị kết quả được trả về.
121
121
122
-
This lets you avoid running potentially expensive formatting logic unless the component is actually inspected. For example, if `date`is a Date value, this avoids calling `toDateString()`on it for every render.
122
+
Điều này giúp bạn tránh việc luôn chạy những logic định dạng (đôi khi những logic này có thể sẽ rất tốn kém), trừ phi là lúc component đó đang được kiểm tra. Ví dụ như, `date`là một giá trị kiểu Date, việc sử dụng `useDebugValue` giúp tránh gọi đến `toDateString()`trên giá trị đó cho mỗi lần render.
0 commit comments