What sort of vocals? Are you just doing interviews?
For the best quality results, mmoto has the correct answer for you - record into an external recorder and sync in post.
Remember that this external recorder could be your computer... if you're recording song vocals you may be able to use a simple adapter and plug the SM58 into a laptop to record.
For an 'OK' result, check out the Rode Videomic. It's a mono shotgun microphone with a built in preamp that slots into the hotshoe of the camera, and then plugs into the audio input. Results from this are much better than the built in microphone - and this sort of setup is fine for interviews/documentary stuff.
The Rode Stere Vidomic costs a lot more and I don't think it's as good (I have both, but I'm selling the stereo version). It's not a shotgun mic, so it picks up close sounds better than further ones and it's got a lot of hiss.