#node.js #vue.js #visual-studio-code
#node.js #vue.js #visual-studio-code
Вопрос:
У меня есть этот компонент Vue, который работает нормально, но отладка является проблемой в VSCode:
<template>
<div>
<button @click="test">Test</button>
</div>
</template>
<script>
async function Test() {
try {
throw('zzzzz');
} catch (e) {
let x = e;
console.log(e); //This logs fine
console.log(x); //This logs fine
let z = 'break here';
/********************
Break on the line above and inspect 'e' in the debug console,
it is 'undefined'
*********************/
}
}
export default {
data(){
return {
}
},
methods: {
test: async function () {
await Test();
}
}
}
</script>
Согласно комментариям в коде, как e, так и x, похоже, установлены правильно, за исключением того, что я не могу проверить e (в консоли отладки vscode chrome dev tools), что, очевидно, усложняет отладку, поскольку у меня обычно нет консоли.инструкции журнала.
Кроме того, отладка работает нормально. Интересно, что если сделать функцию неасинхронной, как показано ниже, то ‘e’ можно проверить, как и ожидалось.
function Test(user)
Возможно, я пропустил какую-то конфигурацию, чтобы вызвать это?
Комментарии:
1. Когда я запускаю ваш пример и регистрирую e, тогда это «zzzzz», как вы и ожидали?
2. Вы делаете что-то неправильно или, возможно, проблема с Vscode, я получил ожидаемый результат для e и x в инструменте отладки Chrome
3. вы используете
let x
, если вы вызываетеx
извнеcatch
x
, тоundefined
4. Это вспомогательный модуль в среде Vue, я не думал, что это будет иметь какое-либо значение на этом уровне, но это должно как-то повлиять на него. Я попробую еще несколько тестов
5. Я обновил этот вопрос, чтобы более точно проиллюстрировать проблему