developit / developit/microbundle

[Bug] Wrong function scope with rest parameters after transpiled

未关闭
#1,037 9 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
JavaScript
星标
8.1k
派生
358
PR 合并指标
30 天内没有已合并 PR

描述

### description
async function with rest parameters seems got wrong function scope after transpiled

### version
microbundle@^0.15.1

### reproduce demo

```
// tsconfig.json

{
"compilerOptions": {
"esModuleInterop": true,
"target": "ES6",
"strict": true,
"moduleResolution": "node",
"experimentalDecorators": true,
"baseUrl": ".",
"allowJs": true
},
"include": ["*.ts"]
}

```

```
// test.ts

export const fn = async (...args: unknown[]) => {
await 1;
[].forEach(() => console.log(...args))
}
```

```
// test.js (generated by `microbundle -i test.ts -o test.js`)

exports.fn = function () {
return Promise.resolve(1).then(function () {
var n = arguments; // <- wrong function scope!!!
[].forEach(function () {
var o;
return (o = console).log.apply(o, [].slice.call(n));
});
});
};
//# sourceMappingURL=test.js.map
```

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。