A React használatának egyik előnye, hogy létrehozhat UI-összetevőket, újra felhasználhatja őket az egész alkalmazásban, és végül elkerülheti a kódlemorzsolódást. Ennek ellenére nehéz teljesen független felhasználói felület-összetevőket létrehozni egyedül a React segítségével. Ha látni szeretné ezeket az összetevőket, olyan nézeteket kell létrehoznia, amelyek megjelenítik ezeket.

Itt jön be a Storybook. Lehetővé teszi UI összetevők létrehozását és tesztelését független futási környezetben, és ebben az oktatóanyagban megtudhatja, hogyan kell használni a Reactban. A bejegyzés végére létrehoz egy gombkomponenst, és dokumentált néhány lehetséges állapotát a Reactban.

Mi az a mesekönyv?

Mesekönyv egy fejlesztői eszköz, amely lehetővé teszi a felhasználói felület összetevőinek futtatását és tesztelését teljes React környezet nélkül. Ez teszi komponensvezérelt fejlesztés könnyebb, mert az alkatrészeket elkülönítve fejlesztheti.

A Storybook segítségével egy összetevő létrehozása után több történetet is létrehozhat, amelyek meghatározzák az összetevő különböző állapotait. Egy gombkomponens esetében ezek az állapotok magukban foglalhatják az elsődleges állapotot, a másodlagos állapotot, a letiltott állapotot és így tovább.

instagram viewer

Mivel a Storybook lehetővé teszi a kód beépítését a történetek létrehozásakor, dokumentációs eszközként is szolgálhat.

A Storybook használatához telepítenie kell a Node-ot a gépére, és rendelkeznie kell a React alapvető ismereteivel.

React alkalmazás létrehozása

A Storybook használatának megkezdéséhez először létrehoz egy React projektet majd hozzon létre összetevőket és azok történeteit.

Futtassa a következő parancsot egy React alkalmazás létrehozásához:

npx teremt-react-app btn-történetkönyv

Ez létrehoz egy btn-storybook nevű mappát az összes függőséggel, amelyre a React alkalmazásnak szüksége van.

Ezután néhány további lépéssel telepítheti és futtathatja a Storybookot.

Mesekönyv telepítése

Keresse meg a btn-storybook mappát, és telepítse a mesekönyvet:

CD btn-mesekönyv
npx mesekönyv init

Mivel a create-react-app-ot használta, ez az egyetlen parancs, amelyet le kell futtatnia a Storybook beállításához. A Storybook telepíti az összes szükséges függőséget, és elvégzi az összes szükséges konfigurációt. A kezdéshez néhány alaptörténetet is létrehoz.

Ha a fenti parancs fut, indítsa el a storybookot a következő kóddal.

npm futás mesekönyv

Ezzel megnyílik a mesekönyv irányítópultja a böngészőben. Valahogy így kell kinéznie:

A gomb komponens létrehozása

A ./src mappában hozzon létre egy Components nevű mappát, és abban hozzon létre egy másik mappát Button néven. A Button mappának ezen az útvonalon kell lennie: ./src/Components/Button.

Most ebben a mappában hozzon létre gombot, és adja hozzá a következő kódot:

import PropTypes tól től "kelléktípusok"
function Button({ label, backgroundColor = "#6B4EFF", szín = "fehér", borderRadius="48 képpont", border="egyik sem"}) {
const stílus = {
háttérszín,
párnázás: "0.5rem 1rem",
szín,
határsugár,
határ
}
Visszatérés (
<gomb style={style}>
{címke}
</button>
)
}
Button.propTypes = {
címke: PropTypes.húr,
háttérszín: PropTypes.húr,
szín: PropTypes.húr,
határ:PropTypes.string,
borderRadius: PropTypes.húr,
}
exportalapértelmezett Gomb;

Ez a komponens néhányat elfogad React kellékek amelyek tartalmazzák a gomb címkéjét és annak stílusait. A propTypes-t is használja a beküldött kellékek típusainak ellenőrzésére, és figyelmeztetést ad, ha nem megfelelő típust használ. Az összetevő egy gombelemet ad vissza.

Gombtörténetek létrehozása

Amikor telepítette a Storybook-ot a React projektben, az előállított egy mappát, amely néhány történetpéldát tartalmaz, név szerint történetek. Keresse meg azt a mappát, és töröljön mindent benne. A történeteket a semmiből fogod létrehozni.

Két történetet fog létrehozni, amelyek az elsődleges és a másodlagos gombot képviselik. Ezen gombok mindegyikének más stílusa van, amely megkülönbözteti a többitől. A történetek létrehozása után mindegyiket megtekintheti a Storybook irányítópultján.

A történetek mappában hozzon létre egy új fájlt button.stories.js néven. Fontos belefoglalni .történetek a .js előtt, mivel ez mondja meg a Storybooknak, amely egy történetfájl.

Importálja a Button összetevőt.

import Gomb tól től "../Components/Button/Button"

Ezután exportálja az összetevő címét és magát az összetevőt. Vegye figyelembe, hogy a cím nem kötelező.

exportalapértelmezett {
cím: "Összetevők/gomb",
komponens: gomb,
}

Az első történet, amelyet létrehoz, az Elsődleges gombhoz tartozik. Tehát hozzon létre egy új, Elsődleges nevű függvényt, és exportálja azt.

export const Elsődleges = () =><Gomb háttérszíne="#6B4EFF" címke="Elsődleges"/>

Most, ha a Storybook irányítópultjára lép, látni fogja a megjelenített gombot.

A renderelt komponens élő szerkesztéséhez és állapotának módosításához a Storybook irányítópulton args-t kell használnia. Az Args lehetővé teszi, hogy argumentumokat adjon át a Storybooknak, amelyek megváltoztatásakor a komponens újbóli megjelenítését eredményezi.

A gombsztori elemeinek meghatározásához hozzon létre egy függvénysablont.

const Sablon = args =><Gomb {...args}/>

Ez a sablon elfogadja az arg-okat, és átadja azokat kellékként a Button komponensnek.

Most átírhatja az Elsődleges történetet az alábbi sablon segítségével.

exportconst Elsődleges = Template.bind({})

Primary.args = {
háttérszín: "#6B4EFF",
címke: "Elsődleges",
}

Ha bejelöli a Storybook irányítópultját, alul vezérlőket kell látnia. Ezekkel a vezérlőkkel módosíthatja a gomb megjelenítését. Módosíthatja a háttérszínt, a szöveg színét, a címkét, a szegélyt és a szegély sugarát.

Csak az args értékeket kell módosítania a többi történet létrehozásához. Például egy Másodlagos gomb létrehozásához használja a következő kódot.

exportconst Másodlagos = Template.bind({})

Secondary.args = {
háttérszín: "#E7E7FF",
szín: "#6B4EFF",
címke: "Másodlagos",
}

A Storybook irányítópulton a különböző történetekhez navigálhat, ha rájuk kattint az oldalsávon. Látni fogja, hogy mindegyik hogyan jelenik meg. Tetszés szerint folytathatja további állapotok hozzáadását a gombtörténetekhez. Próbáljon vázlatot vagy történetvázlatot hozzáadni.

UI összetevők tesztelése

Ez az oktatóanyag rövid bevezetést adott a Storybook React UI összetevőkkel való használatához. Megtanulta, hogyan adhat hozzá Storybook-ot egy React-projekthez, és hogyan hozhat létre alapsztorit egy Button-komponenshez arg-ekkel.

Talán észrevette, hogy a folyamat során azt tesztelte, hogyan jelenik meg a gombkomponens különböző állapotokban. Lehet, hogy több kódot ír, de miután megírta az összetevő történeteket, minimálisra csökkenti a hibákat, amelyek az összetevők alkalmazásában történő újrafelhasználása során merülhetnek fel. Ezen túlmenően könnyebb lesz felderíteni a hibát, ha előfordul. Ez az összetevő-vezérelt fejlesztés szépsége.