rust-tutorials has a hard understand chapter on making wasm bindings in the "triangle-from-scratch" tutorial but at the start of the "WebGL with Bare Wasm" chapter there is a link to a simple example of a thing that calls javascript from wasm. With short blocks showing how to pass things around. Even a few lines with raw string literals getting passed through unsafe pointers..
Anyway I suggest looking at this simple tutorial and read the index.html file and the src/lib.rs files.
I have and did use wasm-bindgen when working with for example "egui", but do not understand how it does what it does. This kettle11 example is easy to understand, maybe you can just skip the bindgen thing. One less thing to learn.