लाइब्रेरी

लाइब्रेरी एक स्क्रिप्ट प्रोजेक्ट होती है, जिसके फ़ंक्शन को दूसरी स्क्रिप्ट में फिर से इस्तेमाल किया जा सकता है.

लाइब्रेरी का ऐक्सेस पाना

अपने प्रोजेक्ट में लाइब्रेरी शामिल करने के लिए, आपके पास कम से कम व्यू-लेवल होना चाहिए उसे ऐक्सेस करें. अगर आप उस लाइब्रेरी के लेखक नहीं हैं जिसे आपको शामिल होते हैं, लेखक से संपर्क करें और ऐक्सेस का अनुरोध करें.

आपके पास उस लाइब्रेरी का स्क्रिप्ट आईडी होना चाहिए जिसे शामिल करना है. अगर आपके पास ऐक्सेस करने के लिए, आपको प्रोजेक्ट सेटिंग में जाकर स्क्रिप्ट आईडी मिलेगा पेज.

अपने स्क्रिप्ट प्रोजेक्ट में कोई लाइब्रेरी जोड़ें

  1. Apps Script एडिटर में बाईं ओर, "लाइब्रेरी" के बगल में 'जोड़ें' पर क्लिक करें लाइब्रेरी .
  2. "स्क्रिप्ट आईडी" में फ़ील्ड में, लाइब्रेरी के स्क्रिप्ट आईडी में चिपकाएं.
  3. लुक अप पर क्लिक करें.
  4. वर्शन ड्रॉपडाउन पर क्लिक करें और लाइब्रेरी का वर्शन चुनें इस्तेमाल करें.
  5. देखें कि डिफ़ॉल्ट "आइडेंटिफ़ायर" है या नहीं आपको पसंद है कि इस लाइब्रेरी के साथ इस्तेमाल करें. आपकी स्क्रिप्ट इस नाम का इस्तेमाल करके लाइब्रेरी देखें. उदाहरण के लिए, अगर इसे Test पर सेट किया जाता है, तो उस लाइब्रेरी की मेथड को इस तरह कॉल करें: Test.libraryMethod().
  6. जोड़ें पर क्लिक करें.

लाइब्रेरी का इस्तेमाल करना

अपनी शामिल की गई लाइब्रेरी का इस्तेमाल वैसे ही करें जैसे आप किसी डिफ़ॉल्ट सेवा का इस्तेमाल करते हैं. इसके लिए उदाहरण के लिए, अगर Test आपकी लाइब्रेरी का आइडेंटिफ़ायर है, तो लाइब्रेरी में मौजूद तरीकों की सूची देखने के लिए, Test के तुरंत बाद एक पीरियड लगाया जाता है.

शामिल की गई लाइब्रेरी के लिए रेफ़रंस दस्तावेज़ को, यहां दिए गए विकल्पों का इस्तेमाल करके खोला जा सकता है यह तरीका अपनाएं:

स्क्रिप्ट एडिटर के बाईं ओर, लाइब्रेरी के नाम के बगल में मौजूद 'ज़्यादा' पर क्लिक करें > नए टैब में खोलें.

लाइब्रेरी हटाना

स्क्रिप्ट एडिटर के बाईं ओर, लाइब्रेरी के नाम के बगल में मौजूद 'ज़्यादा' पर क्लिक करें > निकालें > लाइब्रेरी हटाएं.

लाइब्रेरी अपडेट करना

लाइब्रेरी का वर्शन बदला जा सकता है या उसका आइडेंटिफ़ायर अपडेट किया जा सकता है.

  1. एडिटर के बाईं ओर, "लाइब्रेरी" के नीचे, लाइब्रेरी के नाम पर क्लिक करें.
  2. बदलाव करने के बाद, सेव करें पर क्लिक करें.

लाइब्रेरी बनाना और शेयर करना

अपने स्क्रिप्ट प्रोजेक्ट को लाइब्रेरी के तौर पर इस्तेमाल और शेयर करने के लिए, नीचे दिया गया तरीका अपनाएं.

  1. अलग-अलग वर्शन वाला डिप्लॉयमेंट बनाना आपकी स्क्रिप्ट में से.
  2. लाइब्रेरी के सभी संभावित उपयोगकर्ताओं के साथ, कम से कम व्यू-लेवल का ऐक्सेस शेयर करें.
  3. उन उपयोगकर्ताओं को स्क्रिप्ट आईडी दें, जो प्रोजेक्ट सेटिंग पेज.

सबसे सही तरीके

लाइब्रेरी लिखते समय इन दिशा-निर्देशों का पालन करें:

  1. अपने प्रोजेक्ट के लिए कोई सही नाम चुनें, क्योंकि इसका इस्तेमाल डिफ़ॉल्ट आइडेंटिफ़ायर, जब अन्य लोग आपकी लाइब्रेरी को शामिल करते हैं.
  2. अगर आप चाहते हैं कि आपकी स्क्रिप्ट की एक या ज़्यादा विधियां दिखाई न दें (न ही उपयोग करने योग्य) चुनते हैं, तो आप विधि के नाम के साथ अंडरस्कोर. उदाहरण के लिए, myPrivateMethod_().
  3. लाइब्रेरी के उपयोगकर्ताओं को सिर्फ़ गिनी जा सकने वाली ग्लोबल प्रॉपर्टी दिखती हैं. इसमें फ़ंक्शन शामिल है एलान, var के साथ फ़ंक्शन के बाहर बनाए गए वैरिएबल, और प्रॉपर्टी को साफ़ तौर पर सेट किया गया है ग्लोबल ऑब्जेक्ट पर क्लिक करें. उदाहरण के लिए, enumerable वाले Object.defineProperty() को false पर सेट किया गया एक चिह्न बनाता है, जिसे आप अपनी लाइब्रेरी में इस्तेमाल कर सकते हैं. हालांकि, इस चिह्न को आपके उपयोगकर्ता ऐक्सेस नहीं कर सकते.
  4. अगर आपको अपनी लाइब्रेरी के उपयोगकर्ताओं को, स्क्रिप्ट एडिटर के ऑटोकंप्लीट की सुविधा का इस्तेमाल करने और तो आपके पास JSDoc-शैली होना चाहिए दस्तावेज़ में अपने सभी फ़ंक्शन के लिए जानकारी शामिल करें. यहां एक उदाहरण दिया गया है:

    /**
     * Raises a number to the given power, and returns the result.
     *
     * @param {number} base the number we're raising to a power
     * @param {number} exp the exponent we're raising the base to
     * @return {number} the result of the exponential calculation
     */
    function power(base, exp) { ... }
    

संसाधन का दायरा

लाइब्रेरी के साथ काम करते समय दो तरह के संसाधन होते हैं: शेयर किया गया और उसे शेयर नहीं किया गया है. साझा संसाधन का मतलब है कि लाइब्रेरी और स्क्रिप्ट के पास संसाधन के उसी इंस्टेंस का बिल्ट-इन ऐक्सेस होता है. कॉन्टेंट बनाने नीचे दिए गए डायग्राम में, शेयर किए गए संसाधन को दिखाया गया है. इसके लिए, उपयोगकर्ता प्रॉपर्टी:

शेयर किया गया संसाधन

शेयर नहीं किए गए संसाधन का मतलब है कि लाइब्रेरी और शामिल की गई स्क्रिप्ट, दोनों में उनके संसाधन के इंस्टेंस के लिए बिल्ट-इन ऐक्सेस. हालांकि, एक लाइब्रेरी ये काम कर सकती है: अपने साझा न किए गए संसाधनों को एक्सेस करने के लिए, इन पर काम करता है. यहां एक ऐसे फ़ंक्शन का उदाहरण दिया गया है जिसे आपको अपनी लाइब्रेरी में मौजूद स्क्रिप्ट प्रॉपर्टी दिखाएं:

  function getLibraryProperty(key) {
    return ScriptProperties.getProperty(key);
  }

नीचे दिए गए डायग्राम में, शेयर नहीं किए गए संसाधन को दिखाया गया है. इसके लिए, स्क्रिप्ट के गुण:

शेयर नहीं किया गया संसाधन

इस टेबल में, शेयर किए गए और शेयर नहीं किए गए संसाधन दिए गए हैं. ये संसाधन आपकी जानकारी के लिए हैं:

संसाधन शेयर किए गए* शेयर नहीं किया गया** नोट
लॉक करें इसमें बनाए जाने पर, स्क्रिप्ट के साथ-साथ यह इंस्टेंस सभी को दिखता है लाइब्रेरी.
स्क्रिप्ट गुण इसमें बनाए जाने पर, स्क्रिप्ट के साथ-साथ यह इंस्टेंस सभी को दिखता है लाइब्रेरी.
कैश इसमें बनाए जाने पर, स्क्रिप्ट के साथ-साथ यह इंस्टेंस सभी को दिखता है लाइब्रेरी.
ट्रिगर लाइब्रेरी में बनाए गए सरल ट्रिगर इन ट्रिगर से ट्रिगर नहीं होते हैं: स्क्रिप्ट.
ScriptApp
UiApp
उपयोगकर्ता प्रॉपर्टी
लॉगर और निष्पादन ट्रांसक्रिप्ट
Sites, Sheets, और अन्य कंटेनर getActive() पर कॉल करने पर, इसमें स्क्रिप्ट भी शामिल है.
MailApp और GmailApp
* इसका मतलब है कि लाइब्रेरी में सुविधा/संसाधन और इसके बजाय उस सुविधा का इस्तेमाल करना हो जो स्क्रिप्ट से बनाई गई हो जिन्होंने इसे शुरू कर दिया.
** इसका मतलब है कि लाइब्रेरी में संसाधन/सुविधा का अपना इंस्टेंस है और लाइब्रेरी का इस्तेमाल करने वाली सभी स्क्रिप्ट के पास उसका ऐक्सेस हो एक ही इंस्टेंस.

लाइब्रेरी की जांच करना

अपनी लाइब्रेरी की जांच करने के लिए, हेड डिप्लॉयमेंट का इस्तेमाल करें. ऐसा कोई भी व्यक्ति जिसके पास एडिटर-लेवल का ऐक्सेस है स्क्रिप्ट को ऐक्सेस करने के लिए, हेड डिप्लॉयमेंट का इस्तेमाल किया जा सकता है.

लाइब्रेरी डीबग करना

जब किसी ऐसे प्रोजेक्ट में डीबगर का इस्तेमाल किया जाता है जिसमें आपकी लाइब्रेरी होती है शामिल लाइब्रेरी के फ़ंक्शन में जा सकते है. कोड डीबगर को सिर्फ़ देखने वाले मोड में और सही वर्शन पर.