There is a specific destroy reason for users that post only spam or other abusive content:
This user was created to post spam or nonsense and has no other positive participation
Aside from deleting the user and all their posts, this specific destroy reason also feeds into an automatic spam blocking system. This means that simply destroying the user is the best way to deal with spammers and other abusive users.
Recently the behaviour of spam and offensive flags was changed, and they now hide the content of the removed posts by default. But this does not work for users that were destroyed without also flagging their posts as spam.
Destroying a user with the specific spam reason should treat all posts as if they were flagged as spam, and should hide them from view.