Tengo una aplicación express que tiene controladores que se ven así:
export const createObject = async (req, res) => { try { ...do stuff } catch (error) { res.status(500).json({ message: error.message }); } }; export const updateObject = async (req, res) => { try { ...do stuff } catch (error) { res.status(500).json({ message: error.message }); } }; ... etc¿Hay alguna forma ES6 elegante de envolver cada una de esas llamadas en el bloque try-catch? Quiero hacer algo como:
const tryCatchWrapper = (f, res, code) => { return () => { try { return f.apply(this, arguments); } catch (e) { res.status(code).json(e); } }; }; export const createObject = tryCatchWrapper(async (req, res) => { ...do stuff } }, res, 500);pero no estoy muy seguro de cómo construir/componer esto.