我们公司的另外一个项目是 vue2 + vue-cli,没用 ts,调试经常跑飞。不过我并没有注意过,是不是只有 vue 控件里有这个问题,但估计大概率不是,不然我应该能注意到。
babel 编译后的代码有些很典型的特征,比如下面这段 minify 过的源代码,一眼看过去就知道源代码只是普通的 try { await } finally {}:
, T = function() {
var t = l(i.a.mark((function t(e, n, o) {
var a, c, s, l;
return i.a.wrap((function(t) {
while (1)
switch (t.prev = t.next) {
case 0:
return a = e.startsWith("/") ? e : "".concat(u["a"], "/").concat(e),
c = n ? "".concat(a, "?").concat(n) : a,
t.next = 4,
fetch(c, o);
case 4:
if (s = t.sent,
s.ok) {
t.next = 7;
break
}
throw new r["a"](s);
case 7:
return t.next = 9,
s.json();
case 9:
return l = t.sent,
t.abrupt("return", l.jsonapi ? D(l) : l);
case 11:
case "end":
return t.stop()
}
}
), t)
}
)));
return function(e, n, r) {
return t.apply(this, arguments)
}
}()
就这代码 debugger 跑飞了我一点儿都不奇怪
【 在 libgcc (乞讨积分,求施舍,长期有效) 的大作中提到: 】
: 跟babel什么的没关系,只有sfc文件有这个问题
: 单编ts文件没问题,sfc+js也没问题
: 所以压根就是vue的生态工具不行
: ...................
--
FROM 115.188.133.*