Library

Library adalah project skrip yang fungsinya dapat digunakan kembali dalam skrip lain.

Mendapatkan akses ke koleksi

Untuk menyertakan library dalam project, Anda harus memiliki setidaknya akses tingkat tampilan ke library tersebut. Jika Anda bukan pembuat library yang ingin Anda sertakan, hubungi penulis dan minta akses.

Anda memerlukan ID skrip library yang ingin disertakan. Jika memiliki akses ke library ini, Anda dapat menemukan ID skrip di halaman Setelan Project .

Menambahkan library ke project skrip

  1. Di sebelah kiri editor Apps Script, di samping "Library", klik Tambahkan library .
  2. Di kolom "ID Skrip", tempel ID skrip library.
  3. Klik Cari.
  4. Klik menu drop-down Version, lalu pilih versi library yang akan digunakan.
  5. Periksa apakah nama "ID" default adalah nama yang ingin Anda gunakan dengan library ini. Ini adalah nama yang digunakan skrip Anda untuk merujuk ke library. Misalnya, jika menetapkannya ke Test, Anda dapat memanggil metode library tersebut sebagai berikut: Test.libraryMethod().
  6. Klik Tambahkan.

Menggunakan library

Gunakan library yang disertakan sebagaimana Anda menggunakan layanan default. Misalnya, jika Test adalah ID untuk library Anda, ketik Test segera diikuti dengan titik untuk melihat daftar metode dalam library.

Dokumentasi referensi untuk library yang disertakan dapat dibuka dengan mengikuti langkah-langkah berikut:

Di sebelah kiri editor skrip, di samping nama library, klik Lainnya > Buka di tab baru.

Menghapus koleksi

Di sebelah kiri editor skrip, di samping nama library, klik Lainnya > Hapus > Hapus library.

Memperbarui library

Anda dapat mengubah versi library atau memperbarui ID-nya.

  1. Di sebelah kiri editor, klik nama library di bagian "Library".
  2. Lakukan perubahan, lalu klik Simpan.

Membuat dan membagikan galeri foto

Untuk menggunakan dan membagikan project skrip Anda sebagai library, ikuti langkah-langkah di bawah ini.

  1. Buat deployment berversi skrip Anda.
  2. Bagikan setidaknya akses tingkat tampilan dengan semua calon pengguna library.
  3. Berikan ID skrip kepada pengguna tersebut, yang dapat ditemukan di halaman Project settings.

Praktik terbaik

Berikut beberapa panduan yang harus diikuti saat menulis library:

  1. Pilih nama yang bermakna untuk project Anda karena digunakan sebagai ID default saat library Anda disertakan oleh orang lain.
  2. Jika ingin satu atau beberapa metode skrip tidak terlihat (atau dapat digunakan) oleh pengguna library, Anda dapat mengakhiri nama metode dengan garis bawah. Misalnya, myPrivateMethod_().
  3. Hanya properti global yang dapat dihitung yang terlihat oleh pengguna library. Ini mencakup deklarasi fungsi, variabel yang dibuat di luar fungsi dengan var, dan properti yang secara eksplisit ditetapkan pada objek global. Misalnya, Object.defineProperty() dengan enumerable yang ditetapkan ke false membuat simbol yang dapat Anda gunakan di library, tetapi simbol ini tidak dapat diakses oleh pengguna Anda.
  4. Jika ingin pengguna library menggunakan pelengkapan otomatis editor skrip dan dokumentasi yang dihasilkan secara otomatis, Anda harus memiliki dokumentasi bergaya JSDoc untuk semua fungsi Anda. Berikut contohnya:

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

Cakupan sumber daya

Ada dua jenis resource saat Anda menangani library: bersama dan tidak-bersama. Resource bersama berarti bahwa library dan skrip yang disertakan memiliki akses bawaan ke instance resource yang sama. Diagram berikut mengilustrasikan resource bersama menggunakan contoh Properti Pengguna:

Referensi yang Dibagikan

Resource yang bukan-bersama berarti bahwa library dan skrip include memiliki akses bawaan hanya ke instance resource-nya. Namun, library dapat memberikan akses ke resource yang tidak dibagikan dengan memiliki fungsi eksplisit yang beroperasi pada resource tersebut. Berikut adalah contoh fungsi yang akan Anda sertakan dalam library untuk menampilkan Properti Skripnya:

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

Diagram berikut mengilustrasikan resource yang tidak dibagikan menggunakan contoh Properti Skrip:

Referensi yang Tidak Dibagikan

Tabel ini mencantumkan sumber daya yang dibagikan dan yang tidak dibagikan sebagai referensi Anda:

Resource Dibagikan* Tidak Dibagikan** Catatan
Kunci Instance yang sama terlihat oleh semua skrip, termasuk skrip saat dibuat di library.
Properti Skrip Instance yang sama terlihat oleh semua skrip, termasuk skrip saat dibuat di library.
Cache Instance yang sama terlihat oleh semua skrip, termasuk skrip saat dibuat di library.
Pemicu Pemicu sederhana yang dibuat di library tidak dipicu oleh skrip penyertaan.
ScriptApp
UiApp
Properti Pengguna
Logger dan transkrip eksekusi
Sites, Spreadsheet, dan penampung lainnya Panggilan ke getActive() akan menampilkan container skrip penyertaan.
MailApp dan GmailApp
* Ini berarti library tidak memiliki instance fitur/resource sendiri dan menggunakan instance yang dibuat oleh skrip yang memanggilnya.
** Ini berarti library memiliki instance resource/fiturnya sendiri dan semua skrip yang menggunakan library tersebut berbagi dan memiliki akses ke instance yang sama tersebut.

Menguji library

Untuk menguji library Anda, gunakan deployment head. Siapa pun yang memiliki akses tingkat editor ke skrip dapat menggunakan deployment head.

Men-debug library

Saat menggunakan debugger dalam project yang menyertakan library, Anda dapat melangkah ke fungsi library yang disertakan. Kode muncul di debugger dalam mode hanya lihat dan pada versi yang tepat.