In my day at secondary school it was a derogative term for someone who was a bit of an idiot. It came from Joey Deacon who was a disabled man featured on Blue Peter in the 80's - kids are so cruel sometimes.
I absolutely love Joe/Joseph/Joel/Jonah. Joey too, by extension, though this is one of the few cases when I actually agree with those who say give them the full name, use the nickname for as long as it suits the child and you.
I have a joseph, when he was small he was Jojo, now he is either Joseph or Joe. So no harm in calling him Joey when he is tiny....I remember when ds decided that Jojo was too babyish, and we of course then stopped (though took a bit of time and some stern looks from him to remember)
I adore it!! biased though as I have a Joey. Really Joseph, but when he was tiny, it suited him. Now he's huge, plays tons of sport and is still Joey, and I like it, love it actually....lots of Joe's around, but only my Joey. He's never once been teased about his name, it just suits him. Mummy's little sunbeams, he is no idiot, top of class in almost every subject.