Pustaka

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

Mendapatkan akses ke library

Untuk menyertakan library dalam project, Anda harus memiliki setidaknya level tampilan akses terhadap data tersebut. Jika Anda bukan penulis perpustakaan yang ingin Anda sertakan, hubungi penulis dan minta akses.

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

Menambahkan library ke project skrip

  1. Di sebelah kiri editor Apps Script, di samping "Library", klik Tambahkan library .
  2. Di "ID Skrip" , tempel ID skrip library.
  3. Klik Cari.
  4. Klik dropdown Versi dan pilih versi library untuk digunakan.
  5. Periksa untuk melihat apakah "ID" default adalah nama yang ingin Anda gunakan dengan library ini. Ini adalah nama yang digunakan skrip Anda untuk merujuk ke perpustakaan. Misalnya, jika Anda menetapkannya ke Test, Anda dapat panggil metode library tersebut sebagai berikut: Test.libraryMethod().
  6. Klik Tambahkan.

Menggunakan library

Gunakan library yang disertakan seperti saat Anda menggunakan layanan default. Sebagai misalnya, jika Test adalah ID untuk library Anda, ketik Test langsung diikuti 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.

Mengupdate library

Anda dapat mengubah versi library atau mengupdate ID-nya.

  1. Di sebelah kiri editor, di bagian "Library", klik nama 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. Membuat deployment berversi dalam skrip.
  2. Bagikan setidaknya akses tingkat tampilan kepada semua calon pengguna library.
  3. Berikan ID skrip kepada pengguna tersebut, yang dapat ditemukan di halaman Project setelan halaman.

Praktik terbaik

Berikut ini beberapa panduan yang harus diikuti saat menulis library:

  1. Pilih nama yang berarti untuk proyek Anda karena digunakan sebagai ID default saat library Anda disertakan oleh orang lain.
  2. Jika Anda ingin satu atau beberapa metode skrip tidak terlihat (atau dapat digunakan) untuk pengguna {i>library<i}, Anda dapat mengakhiri nama metode dengan garis bawah. Misalnya, myPrivateMethod_().
  3. Hanya properti global yang dapat dienumerasi yang terlihat oleh pengguna library. Ini mencakup fungsi deklarasi, variabel yang dibuat di luar fungsi dengan var, dan properti ditetapkan secara eksplisit pada objek global. Misalnya, Object.defineProperty() dengan enumerable ditetapkan ke false membuat simbol yang bisa Anda gunakan di koleksi, tetapi simbol ini tidak dapat diakses oleh pengguna.
  4. Jika Anda ingin pengguna pustaka memanfaatkan pelengkapan otomatis editor skrip dan dokumentasi yang dihasilkan secara otomatis, Anda harus memiliki JSDoc-style dokumentasi 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 resource

Ada dua jenis resource saat Anda menggunakan library: dan tidak dibagikan. Sumber daya bersama berarti bahwa perpustakaan dan sumber daya yang memiliki akses bawaan ke instance resource yang sama. Tujuan diagram berikut mengilustrasikan resource bersama menggunakan contoh Properti Pengguna:

Referensi Bersama

Sumber daya yang tidak dibagikan berarti pustaka dan skrip yang disertakan memiliki akses bawaan ke instance resource-nya saja. Namun, library dapat menyediakan akses ke sumber daya yang tidak dibagikan dengan mengoperasikannya. Berikut adalah contoh suatu {i>function<i} yang akan Anda sertakan pada library Anda untuk mengekspos Properti Skripnya:

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

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

Aset yang Tidak Bersama

Tabel ini mencantumkan referensi bersama dan tidak dibagikan sebagai referensi Anda:

Resource Dibagikan* Tidak Dibagikan** Catatan
Kunci Instance yang sama terlihat oleh semua skrip yang disertakan saat dibuat di perpustakaan.
Properti Skrip Instance yang sama terlihat oleh semua skrip yang disertakan saat dibuat di perpustakaan.
Cache Instance yang sama terlihat oleh semua skrip yang disertakan saat dibuat di perpustakaan.
Pemicu Pemicu sederhana yang dibuat di library tidak dipicu oleh penyertaan {i>script<i}.
ScriptApp
UiApp
Properti Pengguna
Pencatat log dan transkrip eksekusi
Sites, Spreadsheet, dan penampung lainnya Panggilan ke getActive() akan menampilkan penampung termasuk naskah.
MailApp dan GmailApp
* Ini berarti library tersebut tidak memiliki instance fitur/resource dan sebagai gantinya, menggunakan yang dibuat oleh skrip yang memanggilnya.
** Ini berarti pustaka memiliki instance sendiri dari sumber daya/fitur dan semua skrip yang menggunakan pustaka itu berbagi dan memiliki akses ke skrip itu instance yang sama.

Menguji library

Untuk menguji library, gunakan head deployment. Siapa saja yang memiliki level editor akses ke skrip dapat menggunakan deployment head.

Men-debug library

Saat menggunakan debugger dalam project yang menyertakan library yang dapat masuk ke dalam fungsi dari {i>library<i} yang disertakan. Kode muncul di debugger dalam mode {i>view-only<i} dan pada versi yang tepat.