Author:
    Creation:2024-08-11Last update:2025-06-29

    एनेमरेशन / बहुवचन रूप

    एनेमरेशन कैसे काम करता है

    Intlayer में, एनेमरेशन enu फ़ंक्शन के माध्यम से प्राप्त किया जाता है, जो विशिष्ट कुंजियों को उनके संबंधित सामग्री से मैप करता है। ये कुंजियाँ संख्यात्मक मान, रेंज, या कस्टम पहचानकर्ता हो सकती हैं। जब React Intlayer या Next Intlayer के साथ उपयोग किया जाता है, तो एप्लिकेशन की लोकल और परिभाषित नियमों के आधार पर उपयुक्त सामग्री स्वचालित रूप से चुनी जाती है।

    एनेमरेशन सेटअप करना

    अपने Intlayer प्रोजेक्ट में एनेमरेशन सेटअप करने के लिए, आपको एक कंटेंट मॉड्यूल बनाना होगा जिसमें एनेमरेशन परिभाषाएँ शामिल हों। यहाँ कारों की संख्या के लिए एक सरल एनेमरेशन का उदाहरण दिया गया है:

    **/*.content.ts
    import { enu, type Dictionary } from "intlayer";
    
    const carEnumeration = {
      key: "car_count",
      content: {
        numberOfCar: enu({
          "<-1": "माइनस एक कार से कम",
          "-1": "माइनस एक कार",
          "0": "कोई कार नहीं",
          "1": "एक कार",
          ">5": "कुछ कारें",
          ">19": "कई कारें",
          "fallback": "फॉलबैक मान", // वैकल्पिक
        }),
      },
    } satisfies Dictionary;
    
    export default carEnumeration;

    इस उदाहरण में, enu विभिन्न स्थितियों को विशिष्ट सामग्री से मैप करता है। जब इसे एक React घटक में उपयोग किया जाता है, तो Intlayer दिए गए चर के आधार पर स्वचालित रूप से उपयुक्त सामग्री चुन सकता है।

    Intlayer एनेमरेशन में घोषणा का क्रम महत्वपूर्ण होता है। पहली मान्य घोषणा को चुना जाएगा। यदि कई स्थितियां लागू होती हैं, तो सुनिश्चित करें कि वे सही क्रम में हैं ताकि अप्रत्याशित व्यवहार से बचा जा सके।
    यदि कोई फॉलबैक घोषित नहीं किया गया है, तो यदि कोई कुंजी मेल नहीं खाती है, तो फ़ंक्शन undefined लौटाएगा।

    React Intlayer के साथ एनेमरेशन का उपयोग करना

    To use enumeration in a React component, you can leverage the useIntlayer hook from the react-intlayer package. This hook retrieves the correct content based on the specified ID. Here's an example of how to use it:

    **/*.tsx
    import type { FC } from "react";
    import { useIntlayer } from "react-intlayer";
    
    const CarComponent: FC = () => {
    const { numberOfCar } = useIntlayer("car_count");
    
    return (
      <div>
        <p>
          {
            numberOfCar(0) // Output: No cars
          }
        </p>
        <p>
          {
            numberOfCar(6) // Output: Some cars
          }
        </p>
        <p>
          {
            numberOfCar(20) // Output: Many cars
          }
        </p>
        <p>
          {
            numberOfCar(0.01) // Output: Fallback value
          }
        </p>
      </div>
    );
    };

    अतिरिक्त संसाधन

    कॉन्फ़िगरेशन और उपयोग के बारे में अधिक विस्तृत जानकारी के लिए, निम्नलिखित संसाधनों को देखें:

    ये संसाधन विभिन्न वातावरणों और विभिन्न फ्रेमवर्क के साथ Intlayer की सेटअप और उपयोग के बारे में और अधिक जानकारी प्रदान करते हैं।

    Using Ordinal Enumeration

    To use this in a React component, call the enumeration with the last digit of the number to get the correct suffix, then pass the full count as the insertion value:

    **/*.tsx
    import type { FC } from "react";
    import { useIntlayer } from "react-intlayer";
    
    const RankingComponent: FC<{ count: number }> = ({ count }) => {
    const { ordinal } = useIntlayer("ranking_component");
    
    // Get the last digit to determine the correct suffix
    const lastDigit = Math.abs(count) % 10;
    
    return (
      <div>
        <p>
          {
            ordinal(lastDigit)({ count }) // e.g., "5th place" for count=5
          }
        </p>
      </div>
    );
    };

    Additional Resources

    For more detailed information on configuration and usage, refer to the following resources:

    These resources provide further insights into the setup and usage of Intlayer in different environments and with various frameworks.