From 498453e7a3022100ce155b0bebd2c09da765c845 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Sat, 7 Mar 2020 10:58:19 +0100 Subject: [PATCH] Catch errors in vue app and emit message if provided by the response MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- src/main.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main.js b/src/main.js index 6d8386747..6907f14b0 100644 --- a/src/main.js +++ b/src/main.js @@ -53,6 +53,14 @@ Vue.directive('focus', { }, }) +Vue.config.errorHandler = (err, vm, info) => { + if (err.response && err.response.data.message) { + const errorMessage = t('deck', 'Something went wrong') + OCP.Toast.error(`${errorMessage}: ${err.response.data.status} ${err.response.data.message}`) + } + throw err +} + /* eslint-disable-next-line no-new */ new Vue({ el: '#content',