How can I prevent anti-aliasing in Photoshop shapes and smart objects?
I am simply drawing a shape using the shape layer tool, however no matter how many shapes I draw, when zoomed in there is always anti-aliasing
I know I can select fill pixels and then switch off anti-aliasing however I need to work with the shape layer tool for scaling. Any help would be great.
You're really asking about two different things: smart objects and shapes. Photoshop will always anti-alias where it needs to, and snapping to the pixel grid only avoids that when your shape contains only vertical and horizontal lines.
A curve or diagonal will still be anti-aliased for on-screen viewing unless you explicitly turn it off, as you've noted in the question. Text and vectors are both displayed this way.
Smart Objects are always raster images in the Photoshop UI, even if the contents of the SO is a vector. Each time you scale a SO, it is re-rendered at the new resolution.
To export vectors as vector shapes, Save As a Photoshop PDF. The PDF format stores vector information in a way that can be used by other applications (such as a printer's RIP). Other applications treat a PSD as a raster image, regardless of its contents.