Hoppa till innehåll

Privilegierad åtgärd - Wrapper

Som standard i Sitevision bubblar inte fel upp i privileged.doPrivilegedAction.
Detta kan vara frustrerande när man försöker hantera fel i en privilegierad åtgärd.
För att lösa detta kan man använda en wrapper-funktion som fångar eventuella fel och kastar dem vidare.

privilegedAction.js
import privileged from '@sitevision/api/server/privileged';
export default function privilegedAction(callback) {
let error;
privileged.doPrivilegedAction(() => {
try {
callback();
} catch (e) {
error = e;
}
});
if (error) throw error;
}