rollup 打包不支持 async 语法吗?

2020-10-19 16:29:26 +08:00
 sologgfun

入口文件 index.js

const { determineRepoDir } = require('./expo');

console.log(determineRepoDir)

expo.js

const { mark } = require('../lib/profile');
async function fff() {
  console.log('11')
}

现象就是如果 expo.js 的 fff 函数不带 async 头,那么 profile 文件里面的代码就会被打包起来,否则不会打包,只会保留 require 的代码?

自己看了半天没整出来为啥。。

1097 次点击
所在节点    问与答
5 条回复
Geo200
2020-10-19 16:39:05 +08:00
你可能需要个解析 async 的插件: https://github.com/leebyron/rollup-plugin-async
sologgfun
2020-10-19 16:47:42 +08:00
@Geo200 应该不是的,我加了 ployfill 之后还是不行,直接不管加不加 async,都不会打包 profile 文件了
DingSoung
2020-10-22 17:30:28 +08:00
同问 await 也不支持
sologgfun
2020-10-22 21:19:45 +08:00
@DingSoung 加个 babel 插件吧,这个问题我已经大概整明白了;
之所以没有打包,是因为 commonjs 插件判断当前文件是 es6 模块,所以没有进行解析,可以通过一个参数 mix 啥的我记不清了,设定为 es6 和 cjs 混合的模块,才会进行解析,但是设定为混合模块后有时候还是有问题,我 github 提 issue 了
DingSoung
2020-10-23 10:09:58 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/716427

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX