在Cider REPL缓冲区中计算表达式时,抛出异常时,其他一个窗口中会出现堆栈跟踪缓冲区。有没有办法解除堆栈跟踪缓冲区而不是杀死缓冲区?
当我从堆栈跟踪缓冲区导航到一行代码时,缓冲区被解除,但在REPL中评估class Abstract {
constructor() {
this.thing = {a: 1, b: 2}
if (new.target === Abstract) {
throw new TypeError("Cannot create an instance of an abstract class")
}
}
get Thing () { return this.thing }
get ThingATimesTen () { return this.thing.a * 10 }
}
class Derived extends Abstract {
constructor() {
super()
}
}
//const a = new Abstract(); // new.target is Abstract, so it throws
const b = new Derived(); // new.target is Derived, so no error
alert(b.Thing.a) // this return 1
b.Thing.a = b.Thing.a + 1
alert(b.Thing.a) // now returns 2
alert(b.ThingATimesTen) // now returns 20
之类的内容时,堆栈跟踪中没有指向任何代码的行。
答案 0 :(得分:3)
只需按 q 即可隐藏堆栈跟踪。顺便说一下,如果你想稍后再看它,你仍然可以通过切换到 cider-error 缓冲区来打开它。