I gave some advice about this a while back in Do my homework for me!.
Unless the situation is urgent, I'll give people enough hints that they can solve the problem themselves. That "aha!" they get from solving it themselves is wonderful fuel for skill growth. Handing out fishes cheats people out of "aha" opportunities.
The other reason is to filter out leeches. I had enough of being the "go to" guy earlier in my career. It was fun for a while, until I saw that I was just enabling one set of people to be lazy, leading to continual, draining interruptions. I don't like to work with lazy leeches. If they're not teachable, I tend to shut them off.