React Tailwind Komponenttirakentaja - Reaaliaikainen Esikatselu & Koodigeneraattori
Ilmainen React Tailwind Komponenttirakentaja reaaliaikaisella esikatselulla. Luo painikkeita, syöttökenttiä, tekstialueita, valintaruutuja ja leivänmuruja Tailwind CSS:llä. Vie tuotantovalmis React-koodi välittömästi.
React-komponenttirakentaja Tailwind CSS:llä
Luo React-komponentteja Tailwind CSS:llä ja näe reaaliaikainen esikatselu
Komponentin tyyppi
Ominaisuudet
Responsiivinen näkymä
Tilan esikatselu
Reaaliaikainen esikatselu
Luotu koodi
<button
className="text-white bg-blue-500 py-2 px-4 m-0 border border-transparent rounded text-base font-medium hover:bg-opacity-90 focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 cursor-pointer"
>
Button
</button>Dokumentaatio
Mikä on React Tailwind -komponenttien rakennustyökalu?
React Tailwind -komponenttien rakennustyökalu on ilmainen selaintyökalu, joka luo Tailwind CSS:llä tyylitellyn React-komponentin. Käyttäjä valitsee komponentin tyypin, kuten painikkeen tai tekstikentän, säätää muutamia tyyliasetuksia, ja työkalu näyttää reaaliaikaisen esikatselun vastaavan JSX-koodin vieressä. Kaikki suoritetaan selaimessa. Tiliä tai palvelinkutsua ei tarvita.
Komponenttityypit
Työkalu voi luoda viidenlaisia komponentteja:
- Painike — napsautettava painike, jossa on mukautettu teksti
- Tekstikenttä — yksirivinen lomakekenttä, jossa on paikkamerkkiteksti
- Tekstialue — monirivinen lomakekenttä, jossa on määritetty määrä rivejä
- Valintaluettelo — vaihtoehtoluettelosta muodostettu pudotusvalikko
- Murupolku — linkkirivi, joka näyttää sivun sijainnin sivustolla, kuten Etusivu / Tuotteet / Luokka
Muutettavat ominaisuudet
Kaikkiin komponenttityyppeihin sovelletaan viittä tyyliominaisuutta:
- Tekstin väri — valkoinen, musta, harmaa, sininen, punainen tai vihreä
- Taustaväri — ei mitään, valkoinen, vaaleanharmaa, sininen, punainen tai vihreä
- Sisämarginaali (sisäinen välistys) — ei mitään, pieni, keskikokoinen, suuri tai painikkeen oletusarvo
- Reunuksen säde (kulmien pyöristys) — ei mitään, pieni, keskikokoinen, suuri tai täysin pyöristetty
- Leveys — automaattinen, täysi, puolet, kolmasosa tai neljäsosa
Jotkin ominaisuudet näkyvät vain tietyillä komponenttityypeillä: painikkeen teksti, tekstikentän tai tekstialueen paikkamerkkiteksti, tekstialueen rivimäärä, valintaluettelon vaihtoehtoluettelo sekä luettelo murupolun kohteista. Tekstikentissä, tekstialueissa ja valintaluetteloissa on myös ”pakollinen”- ja ”pois käytöstä” -valintaruudut; painikkeissa on lisäksi ”pois käytöstä” -valintaruutu.
Neljä ominaisuutta on kiinteitä, eikä niitä voi muuttaa käyttöliittymän kautta: marginaali (aina m-0), reunatyyli (aina border border-transparent), fonttikoko (aina text-base) ja fontin lihavuus (aina font-medium). Jokainen luotu komponentti sisältää nämä samat neljä luokkaa. Jos marginaalia, reunaa tai fonttikokoa halutaan muuttaa, kopioitua koodia on muokattava käsin.
Luotavan luokkaluettelon muodostaminen
Työkalu muodostaa kunkin komponentin Tailwind-luokkamerkkijonon kiinteässä järjestyksessä:
- Tekstin värin luokka, jos väri on määritetty
- Taustavärin luokka, jos väri on määritetty
- Sisämarginaalin, marginaalin, reunan ja reunojen pyöristyksen luokat
- Leveyden luokka, paitsi jos leveydeksi on määritetty ”automaattinen”
- Kiinteät fonttikoon ja fontin lihavuuden luokat
- Vuorovaikutustilojen (hover, focus, active) luokat, jotka vaihtelevat komponenttityypin mukaan
- Pois käytöstä -tilan luokat, jos ”pois käytöstä” on valittu
Painikkeet saavat luokat hover:bg-opacity-90, focus:ring-2, focus:ring-offset-2 ja focus:ring-blue-500. Painike, joka ei ole pois käytöstä, saa lisäksi luokan cursor-pointer. Tekstikentät, tekstialueet ja valintaluettelot saavat sen sijaan luokat focus:outline-none, focus:ring-2, focus:ring-blue-500 ja focus:border-blue-500. Murupolut eivät saa mitään näistä vuorovaikutusluokista, eikä pois käytöstä -tila koske koskaan murupolkua, koska navigointiluetteloa ei voi poistaa käytöstä.
Esimerkki: painike
Oletusasetuksilla (valkoinen teksti, sininen tausta (sävy 500), keskikokoinen sisämarginaali ja pyöristetyt kulmat) työkalu tuottaa seuraavan:
1<button
2 className="text-white bg-blue-500 py-2 px-4 m-0 border border-transparent rounded text-base font-medium hover:bg-opacity-90 focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 cursor-pointer"
3>
4 Button
5</button>
6Esimerkki: tekstikenttä
Kun tekstin väri on harmaa, tausta valkoinen, sisämarginaali pieni, reunojen pyöristys suuri, leveys täysi ja ”pakollinen” valittuna:
1<input
2 type="text"
3 className="text-gray-700 bg-white p-2 m-0 border border-transparent rounded-lg w-full text-base font-medium focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
4 placeholder="Enter your name"
5 required
6/>
7Esimerkki: tekstialue ja valintaluettelo
Tekstialueet ja valintaluettelot noudattavat samaa luokkien muodostussääntöä kuin tekstikentät. Tekstialue, jossa on musta teksti, keskikokoinen sisämarginaali, keskikokoinen reunojen pyöristys, täysi leveys ja 4 riviä:
1<textarea
2 className="text-black p-4 m-0 border border-transparent rounded w-full text-base font-medium focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
3 placeholder="Enter your message"
4 rows={4}
5></textarea>
6Valintaluettelo, jossa on samat värit ja välistys kuin edellä olevassa tekstikenttäesimerkissä sekä kolme vaihtoehtoa:
1<select
2 className="text-gray-700 bg-white p-2 m-0 border border-transparent rounded w-full text-base font-medium focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
3 required
4>
5 <option value="option1">Option 1</option>
6 <option value="option2">Option 2</option>
7 <option value="option3">Option 3</option>
8</select>
9Esimerkki: murupolku
Murupolun linkit ja erottimet käyttävät aina kiinteitä luokkia (linkeissä hover:text-blue-600 ja ”/”-erottimessa mx-2 text-gray-400). Vain ulompi luettelo saa viisi yhteistä tyyliominaisuutta. Kun tekstin väri on harmaa eikä sisämarginaalia tai reunojen pyöristystä ole:
1<nav className="flex" aria-label="Breadcrumb">
2 <ol className="text-gray-700 p-0 m-0 border border-transparent text-base font-medium flex space-x-2">
3 <li className="flex items-center">
4 <a href="/" className="hover:text-blue-600">Home</a>
5 </li>
6 <li className="flex items-center">
7 <span className="mx-2 text-gray-400">/</span>
8 <a href="/components" className="hover:text-blue-600">Components</a>
9 </li>
10 </ol>
11</nav>
12Responsiivinen esikatselu ja responsiiviset luokat
Työkalussa on ”Responsiivinen näkymä” -valitsin, jossa on kolme vaihtoehtoa: mobiili, tabletti ja työpöytä. Vaihtoehdon vaihtaminen muuttaa vain esikatseluruudun leveyttä, jotta käyttäjä voi nähdä suunnilleen, miltä komponentti näyttäisi kapeammalla näytöllä. Se ei lisää luotuun koodiin Tailwindin murtopiste-etuliitteitä, kuten sm:, md:, lg: tai xl:. JSX-tuloste on sama riippumatta valitusta responsiivisesta näkymästä. Jos komponentin on näytettävä erilaiselta eri näyttöleveyksillä, nämä murtopisteluokat on lisättävä kopioituun koodiin käsin.
Tailwind CSS:n lisääminen React-projektiin
- Asenna paketit:
npm install -D tailwindcss postcss autoprefixer - Määritä asetustiedostot:
npx tailwindcss init -p - Luettele projektin lähdetiedostot
tailwind.config.js-tiedostossa kohdassacontent - Lisää kolme Tailwind-määritettä pääasialliseen CSS-tiedostoon:
@tailwind base; @tailwind components; @tailwind utilities; - Liitä luotu komponentti React-tiedostoon
Usein kysyttyä
Mitä React Tailwind -komponenttien rakennustyökalu tekee? Se luo tyylitellyn React-komponentin ja sitä vastaavat Tailwind CSS -luokat sekä näyttää reaaliaikaisen esikatselun, kun käyttäjä säätää asetuksia.
Lisääkö työkalu responsiiviset murtopisteluokat, kuten sm: tai md:, automaattisesti?
Ei. Mobiili/tabletti/työpöytä-säädin muuttaa vain esikatseluruudun kokoa. Viedyssä koodissa ei ole luokkia sm:, md:, lg: tai xl:; ne on tarvittaessa lisättävä käsin.
Voinko muuttaa marginaalia, reunatyyliä tai fonttikokoa?
Et käyttöliittymän kautta. Jokainen luotu komponentti käyttää samaa kiinteää marginaalia (m-0), reunaa (border border-transparent), fonttikokoa (text-base) ja fontin lihavuutta (font-medium). Muuta niitä muokkaamalla kopioitua koodia suoraan.
Tallentaako työkalu komponenttini? Ei. Tallennustoimintoa ei ole. Kopioi luotu koodi ja tallenna se projektin omiin tiedostoihin.
Luoko työkalu TypeScript-koodia?
Työkalu tuottaa JSX:ää (JavaScript-syntaksia). Tuloste on tavallista JSX-merkintää, joten sen voi liittää .tsx-tiedostoon ilman muutoksia, mutta tyyppimäärityksiä ei luoda.
Onko työkalun käyttö ilmaista? Kyllä. Se toimii kokonaan selaimessa ilman käyttäjätiliä, eikä palvelimelle lähetetä mitään pyyntöä.
Toimiiko se Next.js:n, Gatsbyn tai muiden React-kehysten kanssa? Kyllä. Luotu koodi on tavallista JSX:ää Tailwind-luokkineen, joten se toimii kaikissa React-pohjaisissa kehyksissä, joissa Tailwind CSS on määritetty.