Building a button component, that changes automatically on Promise resolution — Users should know the outcome of an action they performed. A common UX pattern is buttons with loading, success and error states. Changing those states on each action, be it easy with Vue, can be tedious, with allot of repeating code. …