If you're going to wait until everything wears out, then you'll need to replace everything at once, else the new stuff will have to wear (out) to the same degree as the most worn out component for it to engage properly
If you keep track of the stretch (get one of those little chain stretch things) then you can replace the chain at about 0.75% stretch. When I've done this the new chain has gone on without slipping. Granted you won't be able to do it forever as the drivetrain is going to wear, but it will save you money in the long run. At 1% Stretch its taken me about 2 rides for the chain to stop slipping
Another way (thats probably the best value for money) is to rotate a set of chains. Something like 3 chains and keep swapping them on a set rotation every couple of rides. Not only will you lilkely clean your chain more often (as the chain is already off (its easier if you use powerlinks, even if using a shimano chain)) but you have a casette, 3 chains and chainrings all about at the same level of wear right from 0% stretch through to worn out
It just depends if you think you can be bothered enough to keep swapping them over