शुरुआत · 4 चरण
शुरू करें
पैकेज इंस्टॉल करें, पहला कंपोनेंट रेंडर करें, कंपोनेंट को अपना डेटा दें और चुनें कि वह कैसे चले। किसी भी चरण में provider या सेटअप नहीं है।
इंस्टॉल करें
Chorus को React 19.2 या नया चाहिए। React Native ऐप में React Native वैकल्पिक peer निर्भरता है, और वही पैकेज अपना नेटिव बिल्ड अपने-आप चुनता है।
npm install @kkwaenggwari/animated-chorusऔर कुछ कॉन्फ़िगर नहीं करना: न provider, न प्लगइन, न स्टाइलशीट जोड़नी है।
आपका पहला कंपोनेंट
स्टेट के मान के साथ
MotionNumberरेंडर करें। स्टेट बदलें और संख्या घूमती है।+1दबाएँ, फिर×10दबाकर नया अंक घूमकर आते देखें।App.jsx import { useState } from 'react'; import { MotionNumber } from '@kkwaenggwari/animated-chorus'; export default function App() { const [count, setCount] = useState(9); return ( <button onClick={() => setCount(count + 1)}> <MotionNumber value={count} /> </button> ); }उदाहरण तैयार हो रहा है…
सेटिंग में
modeकोrollपर करें: बदले हुए अंक बीच के अंकों से गुज़रते हैं।उसे अपना डेटा दें
कई चीज़ें दिखाने वाले कंपोनेंट ऐरे लेते हैं।
itemsआपका डेटा है,getKeyस्थिर key लौटाता है (डिफ़ॉल्टitem.id, या स्ट्रिंग और संख्याओं के लिए आइटम ख़ुद), औरrenderItemहर आइटम बनाता है। कंपोनेंट आपके लिए आइटम एलिमेंट रेंडर करता और मापता है।Tabs.jsx import { MotionHighlight } from '@kkwaenggwari/animated-chorus'; const tabs = [ { id: 'overview', label: 'Overview' }, { id: 'activity', label: 'Activity' }, ]; export function Tabs({ tab, setTab }) { // Keys come from item.id; labels from item.label, or renderItem. return <MotionHighlight items={tabs} value={tab} onValueChange={setTab} />; }key अद्वितीय होनी चाहिए। ऐरे बदलने पर सिर्फ़ आए, गए या हिले आइटम एनिमेट होते हैं।
चुनें कि वह कैसे चले
हर कंपोनेंट
transitionलेता है: timing वक्र या स्प्रिंग।motionTokensकुछ प्रीसेट देता है, औरdurationवाला स्प्रिंग ठीक उसी समय ख़त्म होने के लिए समायोजित होता है।Panel.jsx import { MotionHeight, motionTokens } from '@kkwaenggwari/animated-chorus'; <MotionHeight open={open} transition={motionTokens.spring.gentle}>…</MotionHeight> <MotionHeight open={open} transition={{ duration: 300, easing: 'easeOut' }}>…</MotionHeight> <MotionHeight open={open} transition={{ tempo: 'spring', spring: { stiffness: 300, damping: 30 }, duration: 500 }}>…</MotionHeight>React Native वही इम्पोर्ट और वही props इस्तेमाल करता है।
पूरा सेटअप बस इतना है
बाक़ी सब कंपोनेंट चुनना है। हर एक की वर्कबेंच है, जहाँ कोड कॉपी करने से पहले उसे समायोजित कर सकते हैं।