I don't think there's a definitive answer here. At least I've never head a truly compelling reason to always do one or the other. I'd say it's up to personal preference and that you should do what works best for you, your situation and your environment.
As requested, some pros & cons, although there's nothing mind blowing on this list.
Pros (for WAR):
- Everything is in one convenient package. No need to worry about forgetting something.
- Can be versioned so you know what files work together
- Integrates easily with a CI pipeline i.e. war is created, tested and promoted.
- If versioned, can be easily rolled back.
Cons (against WAR):
- Can be big to transfer around. Partial update could be quicker if file size is lower.
- No need to unzip the file. Might be slightly faster, but probably not.