Tincidunt Chakra UI invenies socium suum utilissimum esse. Ut toolkit componentis pro officiis online, Chakra UI facilem facit ad applimenta inclusive cum efficientia construendi.
Propter accessibilitatem eius et obsequium WAI-ARIA, elementa Chakra UI simplicia sunt ut mos et re- thema utens suo API. Sed hoc solum extremum iceberg de commodis tincidunt praebet.
In hac statione propius inspiciemus aliquas notas provectiores Chakra UI et quomodo adiuvet te ut programmator fiet uberior.
Quid est Chakra UI?
Chakra UI component toolkit est quod adiuvat tincidunt celeriter accessum aedificandi ac reusable user interfacei partium pro eorum applicationibus interretialibus. Suus 'super React aedificavit et systematis vocati ad machinam suam theming utitur.
Propositum chakra UI est facile programmatoribus creare pulchram, responsivam, ac accessibilem usorum interventus minimo conatu. Instrumentum toolkit comprehendit varietatem partium usui paratarum quae ad facile componibiles et extensibiles designantur.
Chakra UI fons aperta est, et eius progressio per Segmentum sub patrocinio est.
Quam ut install Chakra UI
Mandata sequentia typus debebis incorporare Chakra in Project:
npm i @chakra-ui/react @emotion/react @emotion/styled framer-motion
yarn add @chakra-ui/react @emotion/react @emotion/styled framer-motion
ChakraProvider configurare debes ad radicem applicationis tuae postquam Chakra UI insertis. Secundum compagem uteris, hoc potest esse in indice.jsx, index.tsx, seu lima app.jsx.
import * as React from 'react'
import { ChakraProvider } from '@chakra-ui/react'
function App() {
return (
<ChakraProvider>
<TheRestOfYourApplication />
</ChakraProvider>
)
}
Provectus Techniques in Chakra UI
Generans Real-time SVGs
Velis alacriter renovare SVGs tuum consilium hodiernam reflectere dum nova themata pro tuo loco constituens. Haec necessaria sunt ad distinctos SVGs ad singula argumenta facienda.
Chakra UI, contra, optio magis amicabilis est. Using the useColorMode
hamus in Chakra UI, colorem satietatis nostrae SVGs alacriter mutare possumus.
UseColorMode nonnisi adhibita est modus obscura quondam impletur. Usura tenebris primum chakra III modus? Hoc articulum ostendet tibi quomodo recte operari possis.
quod useColorMode
optio praesto est postquam in tenebris modum datum est.
import { LightBulb, Moon, Sun, Vercel } from "../svgs";
import { Box, Button, Center, Stack, useColorMode } from "@chakra-ui/react";
export default function SVG() {
const { colorMode, toggleColorMode } = useColorMode();
return (
<Center>
<Box>
<Center>
<Button onClick={toggleColorMode}>
Switch to {colorMode === "light" ? "Dark" : "Light"}
</Button>
</Center>
<Stack direction={["column", "row"]} spacing="24px" mt={14}>
<LightBulb colorMode={colorMode} />
<Moon colorMode={colorMode} />
<Sun colorMode={colorMode} />
<Vercel colorMode={colorMode} />
</Stack>
</Box>
</Center>
);
}
In codice super integrat useColorMode
hamum et SVG ad eos excitandos. utens useColorMode
color modus recuperare et mutare possumus. Colores commutare si vis, utroque utere debes colorMode
aut toggleColor
Modus functionis.
Chakra Themes
Chakra UI themata adhibentur utens Styled System Theme Specification ars. Themata in Chakra varias aspectus attingere possunt a colore pallidiore ad iustae.
Vos iustus postulo ut importare extendTheme
functionem habentes claves addendo ut signa in preset mitigare. Inspice hoc.
Vos iustus postulo creare Theme.js
file ut incipiat.
import { extendTheme } from "@chakra-ui/react";
const themes = {
colors: {
brand: {
100: "#ff0000",
80: "#ff1a1a",
},
},
};
const theme = extendTheme(overrides);
export default theme;
Addit duos colores ad thema objectum ut magis venusta et appellata. Secundum determinationes programmatis, figas stili formas facere potes pro speciebus, confractionibus, fontis magnitudinibus, columnarum latitudines, et plura.
Ut novis notis provectis in hoc themate obiecto uteretur, debes primum instituere ChakraProvider
ad radicem applicationis.
import { ChakraProvider } from "@chakra-ui/react";
import theme from "theme";
import Nav from "Nav";
function MyApp({ Component, pageProps, router }) {
return (
<ChakraProvider theme={theme}>
<Nav />
<Component {...pageProps} />
</ChakraProvider>
);
}
export default MyApp;
Deinde dirigis ChakraProvider
uti themate objecto prius creasti. Omnes partium Chakra nunc notis coloribus utuntur.
Aliqua incepta iustus postulo ut chakra mutaret principale elementum styli potius quam styli modificationem quovis modo requirat.
Exemplum obiecti styli componentis hic est:
const ComponentStyle = {
// style object for base or default style
baseStyle: {},
// styles for different sizes ("sm", "md", "lg")
sizes: {},
// styles for different visual variants ("outline", "solid")
variants: {},
// default values for `size` and `variant`
defaultProps: {
size: "",
variant: "",
},
}
Nunc, te solum mutare Button
et Heading
partes.
const overrides = {
components: {
Button: {
baseStyle: {
borderRadius: "none",
},
sizes: {
small: {
px: 5,
h: "50px",
fontSize: "20px",
},
medium: {
px: 7,
h: "60px",
fontSize: "25px",
},
large: {
px: 8,
h: "70px",
fontSize: "30px",
borderRadius: "10px",
},
},
variants: {
primary: {
bg: "primary",
color: "#fff",
},
secondary: {
bg: "secondary",
color: "#fff",
},
ghost: {
bg: "transparent",
border: "1px solid red",
},
primaryGhost: {
bg: "transparent",
border: "1px solid",
borderColor: "primary",
},
secondaryGhost: {
bg: "transparent",
border: "1px solid",
borderColor: "secondary",
_hover: {
color: "#fff",
bg: "#BB1415",
},
},
},
},
Heading: {
baseStyle: {
fontFamily: "Inter",
fontWeight: "600",
},
sizes: {
small: {
fontSize: "20px",
},
medium: { fontSize: "25px" },
large: { fontSize: "30px" },
},
},
},
};
const theme = extendTheme(overrides);
export default theme;
Radii termini removere possumus qui per defaltam positus est Button
sublato suo baseStyle
. Fontem fontis magnitudine ac speciei pro thema mutare potes Heading
. Praemissis exemplis utens, intelligere potes quomodo vexillum styli Chakra componentis mutare possimus.
Styli Chakra amplificandi vel permutandi nobis praebet visibilitatem et potestatem super aspectum et operationem instrumentorum nostrorum usoris.
Chakra et Tertia Pars Components
Tertia pars modulorum chakra permittit ut eorum stilo prodesse possint. Quam ob rem, elementa tertia-partitio cum Chakra UI coniungens involucra proprietaria pauciora requirit.
Sequens index elementorum HTML elementorum chakra fabricarum suffultus est:
import Image from "next/image";
import { Box, Center, chakra, HStack, VStack } from "@chakra-ui/react";
import woman from "../public/woman.jpg";
const ChakraNextImage = chakra(Image);
export default function factory() {
return (
<Center><HStack spacing={10}>
<Box width="400px" h="400px" position="relative">
<ChakraNextImage
src={woman}
alt="an img"
layout="fill"
objectFit="cover"
borderRadius="full"
/>
</Box>
</HStack>
</Center>
);
}
Integremus Next.js Image
componentia cum Chakra UI in codice snippet supra. Deinde, constituimus a . ChakraNextImage
componens, et per eam transire possumus stilum Chakra adminicula Image
.
animations
Potes definire mattis usura Chakra UI's keyframes
qui ferret auxilium. Keyframes
in definitione keyframe CSS sume et rem redde in stylis uti potes:
import {
Box,
Button,
Center,
VStack,
keyframes,
} from "@chakra-ui/react";
import { LightBulb } from "svgs";
const spin = keyframes`
from {transform: rotate(0deg);}
to {transform: rotate(360deg)}
`;
export default function Transition() {
const spinAnimation = `${spin} infinite 2s linear`;
return (
<Center>
<VStack spacing={20}>
<Box animation={animation}>
<LightBulb />
</Box>
</VStack>
</Center>
);
}
usura keyframes
adiutorem creare potes animationem quam hic vides. Animationis huius columen nos permittit ad componentes UI Chakra animare.
Ut ultimum gradum, transi spinAnimation
in componentibus Box ut animationes ad apps Chakra UI accedant.
Page Transitiones
Paginae transitiones ad applis nostris addi possunt ut experientiam usoris meliores cum inter paginas movent.
Hoc exemplum est quomodo eam consequi possit cum Chakra UI:
import { ChakraProvider, ScaleFade } from "@chakra-ui/react";
import theme from "theme";
import Nav from "Nav";
function MyApp({ Component, pageProps, router }) {
return (
<ChakraProvider theme={theme}>
<Nav />
<ScaleFade
key={router.route}
initialScale={0.9}
in="true"
>
<Component {...pageProps} />
</ScaleFade>
</ChakraProvider>
);
}
export default MyApp;
Ut transitus paginae efficiant, utere transitus componentibus ex Chakra UI. ScaleFade in superiore linea codicis transitus adhibetur.
placere certiorem ScaleFade
de via tua applicationis ut transitus fungatur ut per tegumentum movearis! Obiectum notitias praebet de via currenti quam tunc mittere potes ScaleFade
Clavis Prop. InitialScale
adminiculo adhibentur ad stabiliendum initium transitus et efficiendi cum componentia redditur.
In hoc fragmento paucas lineas et facultates quas Chakra UI offert et quomodo nos adiuvat in perfecta experientia inspeximus. Inspeximus etiam quomodo res themata instituenda et stylos globali enucleandos adiuvent ad scalabilitatis nostri systematis conservandam.
Si nondum habes, Credimus hunc articulum aliquas ideas tibi dedisse ad processum evolutionis tuae Chakra UI streamline.
Leave a Reply