Edit, forgot to mention that by default a gltf will export all meshes in a parent node as you can see by opening ‘the inspector’ in the PG and unfold ‘nodes. So, when you call mesh[0] you are actually calling an empty node (the parent). The most common technique is to start by removing this parent. There’s a video that explains this better than I ever will I would just need to find it… OK found one, not the one is was thinking of but is nicely expained in this video for 'thin instance’. Go to minute 4:15 of the video.
Dont’ worry and don’t give up. It’s easy to miss something with js. Not as if js would give you a lot of information about what is wrong I do it all the time