$A.enqueueAction is hit, but not executed until another event fires in page (SweetAlerts)
I think this is happening because you are calling the method from outside Aura's normal rendering cycle -hence it works once you force something else to render. Try putting your callback inside this:
$A.getCallback(function() {
if (component.isValid()) {
helper.deleteDoc(component, docId );
}
});
This sorted it for me:
$A.getCallback(function() {
$A.enqueueAction(action);
})();
Note the ()
on the end before the ;