Untuk membuat aplikasi pada Blazor, kita menggunakan C# dan Razor. Razor merupakan kombinasi dari HTML dan C#. Dan output dari blazor aplikasi di eksekusi oleh .Net runtime.
Seperti kita ketahui, terdapat dua model hosting
pada aplikasi blazor, yang pertama WebAssembly dan yang kedua adalah Server.
Untuk WebAssembly aplikasi dan .Net runtime
berjalan pada sisi client didalam web browser. .Net runtime yang digunakan pada
browser berdasarkan WebAssembly atau yang biasa disebut WASM. WASM adalah
instruksi berformat binary yang dieksekusi Javascript runtime didalam browser. Jadi
ini merupakan cara kerja dari Client Side hosting model pada blazor.
Browser juga memiliki browser API yang berbeda-beda, seperti Document Object Model (DOM). Dengan menggunkan DOM kita dapat mengkases dan mengganti elemen HTML pada aplikasi web. Browser API, seperti DOM ini dapat diakses dengan menggunakan JavaScript Runtime. Yang perlu diketahui, tanpa JavaScript Interop kita hanya dapat menggunakan fungsi yang hanya disediakan oleh Blazor Framework dan .Net. Lalu bagaimana jika kita ingin mengakses browser API dari code yang tidak disediakan oleh Blazor Framework? Untuk hal ini kita perlu memanggil code pada JavaScript yang akan mengakses Browser Api.
Blazor mendukung JavaScript Interoperabality
(JavaScript Interop), dimana kita dapat mengakses code pada JavaScript. Dari
sini dapat kita ketahui, kapan kita harus menggunakan JavaScript pada aplikasi
Blazor. Dimana jika aplikasi kita menggunakan fungsi-fungsi Browser API seperti
DOM, Local Storage, Online Status yang tidak disediakan oleh Blazor Framework.
Terima kasih
Wassalam