• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

react typescript

VPS Starter Arubacloud
0 głosów
233 wizyt
pytanie zadane 15 lipca 2020 w JavaScript przez rob Bywalec (2,440 p.)

Mam taki problem z Typescriptem- nie potrafię określić typu dla tego kodu więc dałem any

function Display({ toDoList }: any) {
    console.log(toDoList);
    const display = toDoList.map((item: any) => {
        console.log(item);

        return (

            <div key={item.id}>
                <h1> {item} </h1>
            </div>
        )
    })

    return (
        <>
            {display}
        </>
    )
}

ktoś wie co powinienem wpisać zamiast any? toDoList w konsoli tak się wyświetla:

  1. (2) [{…}, {…}]
    1. 0: {text: "Walk the dog", complete: true, id: 1}
    2. 1: {text: "Play with Frodo", complete: false, id: 2}
    3. length: 2
    4. __proto__: Array(0)

Czyli jest to tablica z obiektami

jest jeszcze jeden błąd w konsoli 

react-dom.development.js:13413 Uncaught Error: Objects are not valid as a React child (found: object with keys {text, complete, id}). If you meant to render a collection of children, use an array instead.
    in h1 (at Display.tsx:14)
    in div (at Display.tsx:13)
    in Display (created by ConnectFunction)
    in ConnectFunction (at App.tsx:11)

Czy ktoś wie co ja robię źle? W Reakcie bez Typescriptu coś takiego chodziło....

komentarz 15 lipca 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
wystawisz mi ta apke na jakims repozytorium?

1 odpowiedź

0 głosów
odpowiedź 15 lipca 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
wybrane 17 lipca 2020 przez rob
 
Najlepsza

Początek powinien wyglądać tak:
 

type YourProps = {
    toDoList: Array;
}

const Display: React.FC<YourProps> = (props) => {
   console.log(props.toDoList);
}

Drugi błąd dotyczy tego, że w tagu h1 odwołujesz się do obiektu zamiast do typu prymitywnego. Powinieneś tam odwoływać się do 

<h1> item.name</h1> //lub jakiś inny artybut tego obiektu

 

komentarz 17 lipca 2020 przez rob Bywalec (2,440 p.)
a masz może Slacka?
komentarz 17 lipca 2020 przez rob Bywalec (2,440 p.)

ja mam na githubie

Pawel Nackiewicz

Awaiting PawelNackiewicz’s response

komentarz 17 lipca 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
dobra miałem maila w spamie, push poszedł
komentarz 17 lipca 2020 przez rob Bywalec (2,440 p.)
Aha, czyli zrobiłeś to bez Reduxa,

Dzięki za poświęcony czas... :)
komentarz 17 lipca 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
tam go po prostu nie potrzebujesz a jak cos do tego stanu uzywałbym hooka useState

Podobne pytania

0 głosów
0 odpowiedzi 113 wizyt
pytanie zadane 4 października 2023 w JavaScript przez reaktywny Nałogowiec (42,000 p.)
0 głosów
1 odpowiedź 306 wizyt
0 głosów
2 odpowiedzi 640 wizyt
pytanie zadane 12 marca 2022 w JavaScript przez jarusek13 Początkujący (310 p.)

92,947 zapytań

141,899 odpowiedzi

321,118 komentarzy

62,283 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...