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
[Условные типы (Conditional Types)](<https://nauchikus.gitlab.io/typescript-definitive-guide/book/contents/%D0%A3%D1%81%D0%BB%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5%20%D1%82%D0%B8%D0%BF%D1%8B%20(Conditional%20Types).html>), это типы способные принимать одно из двух значений, основываясь на выражении,в котором устанавливается принадлежность к заданному типу данных. Условные типы семантически схожи с тернарным оператором.
Copy file name to clipboardExpand all lines: lessons/lesson43/lecture.md
+16-5
Original file line number
Diff line number
Diff line change
@@ -321,7 +321,7 @@ describe("App", () => {
321
321
322
322
> RTL используется для взаимодействия с вашими компонентами React так, как это делает человек. То, что видит человек, - это просто визуализированный HTML из ваших компонентов React, поэтому вы видите эту структуру HTML как результат
323
323
324
-
```js [1-30]
324
+
```html [1-30]
325
325
<body>
326
326
<div>
327
327
<div>Hello React</div>
@@ -467,25 +467,25 @@ describe("App", () => {
467
467
468
468
`getByLabelText`:
469
469
470
-
```js
470
+
```html
471
471
<labelfor="search" />
472
472
```
473
473
474
474
`getByPlaceholderText`:
475
475
476
-
```js
476
+
```html
477
477
<inputplaceholder="Search" />
478
478
```
479
479
480
480
`getByAltText`:
481
481
482
-
```js
482
+
```html
483
483
<imgalt="profile" />
484
484
```
485
485
486
486
`getByDisplayValue`:
487
487
488
-
```js
488
+
```html
489
489
<inputvalue="JavaScript" />
490
490
```
491
491
@@ -621,6 +621,9 @@ describe("App", () => {
621
621
<!-- v -->
622
622
623
623
```js [1-30]
624
+
importReactfrom"react";
625
+
importAppfrom"./App";
626
+
624
627
describe("App", () => {
625
628
test("renders App component", async () => {
626
629
render(<App />);
@@ -677,7 +680,11 @@ describe("App", () => {
677
680
678
681
<!-- v -->
679
682
683
+
<!-- eslint-skip -->
684
+
680
685
```js
686
+
importReactfrom"react";
687
+
681
688
functionSearch({ value, onChange, children }) {
682
689
return (
683
690
<div>
@@ -691,6 +698,8 @@ function Search({ value, onChange, children }) {
691
698
<!-- v -->
692
699
693
700
```js [1-30]
701
+
importReactfrom"react";
702
+
importSearchfrom"./Search";
694
703
// FireEvent
695
704
describe("Search", () => {
696
705
test("calls the onChange callback handler", () => {
@@ -714,6 +723,8 @@ describe("Search", () => {
714
723
<!-- v -->
715
724
716
725
```js [1-30]
726
+
importReactfrom"react";
727
+
importSearchfrom"./Search";
717
728
// UserEvent
718
729
describe("Search", () => {
719
730
test("calls the onChange callback handler", async () => {
0 commit comments