Penjelasan Hello World

... 2022-7-7 About 2 min

# Penjelasan Hello World

Dalam panduan memulai cepat Hello World, kami menjalankan beberapa perintah sederhana dan dengan sangat cepat mendapatkan contoh dan menjalankannya. Ini memungkinkan Anda untuk memastikan bahwa Anda memiliki semua prasyarat dan dapat menggunakan taman bermain lokal untuk membuat kueri sederhana guna mendapatkan data pertama Anda dari SubQuery. Di sini, kita melihat lebih dekat apa arti semua perintah itu.

# subql init

Perintah pertama yang kami jalankan adalah subql init subqlHelloWorld.

Ini melakukan pekerjaan berat dan membuat banyak file untuk Anda. Sebagaimana dicatat dalam dokumentasi resmi, Anda terutama akan mengerjakan file-file berikut:

  • Manifes di project.yaml
  • Skema GraphQL di schema.graphql
  • Fungsi Pemetaan di direktori src/mappings/

file subql kunci

File-file ini adalah inti dari semua yang kami lakukan. Karena itu, kami akan mendedikasikan lebih banyak waktu untuk file-file ini di artikel lain. Untuk saat ini, ketahuilah bahwa skema berisi deskripsi data yang dapat diminta pengguna dari SubQuery API, file yaml proyek yang berisi parameter tipe "konfigurasi" dan tentu saja mappingHandlers yang berisi TypeScript yang berisi fungsi yang mengubah data.

# pemasangan yarn

Hal berikutnya yang kami lakukan adalah pemasangan benang. npm install dapat digunakan juga.

Pelajaran sejarah singkat. Node Package Manager atau npm awalnya dirilis pada tahun 2010 dan merupakan pengelola paket yang sangat populer di kalangan pengembang JavaScript. Ini adalah paket default yang diinstal secara otomatis setiap kali Anda menginstal Node.js di sistem Anda. Benang awalnya dirilis oleh Facebook pada tahun 2016 dengan maksud untuk mengatasi beberapa kekurangan kinerja dan keamanan bekerja dengan npm (pada waktu itu).

Apa yang dilakukan yarn adalah melihat file package.json dan mengunduh berbagai dependensi lainnya. Melihat file package.json, sepertinya tidak ada banyak dependensi, tetapi ketika Anda menjalankan perintah, Anda akan melihat bahwa 18.983 file ditambahkan. Ini karena setiap dependensi juga akan memiliki dependensinya sendiri.

file subql kunci

# kodegen yarn

Kemudian kita menjalankan codegen benang atau npm run-script codegen. Apa yang dilakukan adalah mengambil skema GraphQL (dalam schema.graphql) dan menghasilkan file model TypeScript terkait (Oleh karena itu file output akan memiliki ekstensi .ts). Anda tidak boleh mengubah file yang dihasilkan ini, cukup ubah file schema.graphql sumber.

file subql kunci

# Pembuatan yarn

bangun benang atau npm run-script build kemudian dieksekusi. Ini harus akrab bagi programmer berpengalaman. Itu membuat folder distribusi yang melakukan hal-hal seperti pengoptimalan kode yang mempersiapkan penyebaran.

file subql kunci

# docker-compose

Langkah terakhir adalah perintah docker gabungan docker-compose pull && docker-compose up (dapat dijalankan secara terpisah juga). Perintah pull mengambil semua gambar yang diperlukan dari Docker Hub dan perintah naik memulai container.

> docker-compose pull
Menarik postgres        ... Selesai
Menarik subquery-node   ... Selesai
Menarik graphql-engine  ... Selesai
1
2
3
4

Saat kontainer dimulai, Anda akan melihat terminal mengeluarkan banyak teks yang menunjukkan status node dan mesin GraphQL. Saat itulah Anda melihat:

subquery-node_1   | 2021-06-06T02:04:25.490Z <fetch> INFO fetch block [1, 100]
1

anda tahu bahwa node SubQuery telah disinkronkan.

# Ringkasan

Sekarang setelah Anda memiliki wawasan tentang apa yang terjadi di balik selimut, pertanyaannya adalah dari mana dari sini? Jika Anda merasa percaya diri, Anda dapat langsung mempelajari cara membuat proyek dan mempelajari lebih lanjut tentang tiga file utama. File manifes, skema GraphQL, dan file pemetaan.

Jika tidak, lanjutkan ke bagian tutorial kami di mana kami dapat menjalankan contoh Halo Dunia ini pada infrastruktur yang dihosting SubQuery, kami akan memodifikasi blok awal, dan kami akan menyelam lebih dalam di dalam menjalankan proyek SubQuery dengan menjalankan dan proyek sumber terbuka yang tersedia.

Last update: July 7, 2022 09:05