Librerie

Una libreria è un progetto di script le cui funzioni possono essere riutilizzate in altri script.

Ottenere l'accesso a una raccolta

Per includere una libreria nel progetto, devi avere almeno il livello di visualizzazione per accedervi. Se non sei l'autore della biblioteca che desideri includere, contattare l'autore e richiedere l'accesso.

È necessario l'ID script della libreria da includere. Se hai accesso alla libreria, puoi trovare l'ID script nella sezione Impostazioni progetto .

Aggiungere una libreria al progetto di script

  1. A sinistra dell'editor di Apps Script, accanto a "Librerie", fai clic su Aggiungi un libreria .
  2. Nell'"ID script" incolla l'ID script della libreria.
  3. Fai clic su Cerca.
  4. Fai clic sul menu a discesa Versione e seleziona la versione della raccolta da utilizzare.
  5. Verifica che il nome predefinito "Identificatore" sia quello che vuoi utilizzare con questa libreria. Questo è il nome utilizzato dallo script consulta la libreria. Ad esempio, se imposti Test, puoi chiama un metodo di quella libreria come segue: Test.libraryMethod().
  6. Fai clic su Aggiungi.

Utilizzare una libreria

Utilizza la libreria inclusa come faresti con un servizio predefinito. Per Ad esempio, se Test è l'identificatore della tua raccolta, digita Test seguito immediatamente da un punto per visualizzare l'elenco dei metodi nella libreria.

La documentazione di riferimento per una libreria inclusa può essere aperta seguendo questi passaggi:

A sinistra dell'editor di script, accanto al nome della libreria, fai clic su Altro > Apri in una nuova scheda.

Rimuovere una raccolta

A sinistra dell'editor di script, accanto al nome della libreria, fai clic su Altro > Rimuovi > Rimuovi raccolta.

Aggiornare una raccolta

Puoi modificare la versione della libreria o aggiornare il relativo identificatore.

  1. A sinistra dell'editor, nella sezione "Librerie", fai clic sul nome della libreria.
  2. Apporta le modifiche e fai clic su Save (Salva).

Creare e condividere una raccolta

Per utilizzare e condividere il tuo progetto di script come libreria, segui i passaggi riportati di seguito.

  1. Crea un deployment con controllo delle versioni dello script.
  2. Condividi almeno l'accesso a livello di visualizzazione con tutti i potenziali utenti della raccolta.
  3. Fornisci a questi utenti l'ID script, che puoi trovare nella scheda impostazioni .

Best practice

Ecco alcune linee guida da seguire quando scrivi una biblioteca:

  1. Scegli un nome significativo per il progetto, dato che viene utilizzato come identificatore predefinito quando la tua raccolta è inclusa da altri.
  2. Se vuoi che uno o più metodi dello script non siano visibili (né usable) per gli utenti della tua biblioteca, puoi terminare il nome del metodo con il trattino basso. Ad esempio, myPrivateMethod_().
  3. Solo le proprietà globali enumerabili sono visibili agli utenti delle librerie. Sono incluse le funzioni dichiarazioni, variabili create all'esterno di una funzione con var e proprietà impostate in modo esplicito sull'oggetto globale. Ad esempio, Object.defineProperty() con enumerable impostato su false crea un simbolo che puoi usare nella tua raccolta, ma non è accessibile ai tuoi utenti.
  4. Se vuoi che gli utenti della tua biblioteca utilizzino il completamento automatico e la documentazione generata automaticamente, devi avere un file di tipo JSDoc documentazione per tutte le tue funzioni. Ecco un esempio:

    /**
     * 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) { ... }
    

Determinazione dell'ambito delle risorse

Quando lavori con le librerie, esistono due tipi di risorse: e non condivisi. Una risorsa condivisa significa che sia la libreria che lo script dispone di accesso integrato alla stessa istanza della risorsa. La il seguente diagramma illustra una risorsa condivisa utilizzando l'esempio di Proprietà utente:

Risorsa condivisa

Una risorsa non condivisa significa che la libreria e lo script di inclusione hanno un accesso integrato solo all'istanza della risorsa. Tuttavia, una libreria può forniscono l'accesso alle proprie risorse non condivise tramite funzioni esplicite che possono operare su di essi. Ecco un esempio di una funzione che puoi includere in della libreria per esporre le relative proprietà dello script:

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

Il seguente diagramma illustra una risorsa non condivisa utilizzando l'esempio di Proprietà script:

Risorsa non condivisa

In questa tabella sono elencate le risorse condivise e non condivise come riferimento:

Risorsa Condiviso* Non condivisi** Note
Blocca La stessa istanza è visibile a tutti, inclusi gli script quando viene creata nella libreria.
Proprietà script La stessa istanza è visibile a tutti, inclusi gli script quando viene creata nella libreria.
Cache La stessa istanza è visibile a tutti, inclusi gli script quando viene creata nella libreria.
Trigger I trigger semplici creati nella libreria non vengono attivati dall'inclusione lo script.
ScriptApp
UiApp
Proprietà utente
Trascrizione logger ed esecuzione
Sites, Fogli e altri contenitori Una chiamata a getActive() restituisce il container dell'oggetto incluso lo script.
MailApp e GmailApp
* Ciò significa che la libreria non ha una propria istanza del caratteristica/risorsa e utilizza invece quella creata dallo script che l'ha richiamato.
** Ciò significa che la libreria ha la propria istanza della risorsa/funzionalità e che tutti gli script che utilizzano la libreria condividano e abbiano accesso nella stessa istanza.

Testare una libreria

Per testare la raccolta, utilizza il deployment principale. Chiunque abbia l'accesso a livello di editor allo script può usare il deployment head.

Eseguire il debug di una libreria

Quando utilizzi il debugger in un progetto che include una libreria possono entrare in una funzione della libreria inclusa. Il codice viene visualizzato in del debugger in modalità di sola visualizzazione e nella versione corretta.