我对TypeScript、Vue或Node生态系统都不是很有经验。
我有一个使用Vue CLI创建的工作设置,使用Vue 3和TypeScript,几乎没有改变vue create
生成项目和配置的方式。如果我理解正确的话,Babel将在我的package.json
中引用"browserslist"
配置,并添加polyfills / rewrite代码来使用遗留浏览器。TypeScript编译器也有--target
和--lib
选项。其看起来做类似事情。
我在Vue项目中编写的TypeScript代码是否被转换了两次,第一次是被TypeScript编译器转换,第二次是被Babel转换?如果是,有没有办法避免这种冗余?
编辑添加:我刚用上面的设置创建了一个新的空白项目,然后被问到是否要 “在TypeScript旁边使用Babel(现代模式、自动检测多边形填充、转换JSX所需的)"。我不在Vue中使用JSX,但谁能对“现代模式”说不呢,不管它是什么。
1条答案
按热度按时间hfyxw5xn1#
我知道这很旧了,但是对于任何发现它的人来说,
TypeScript可以通过babel或typescript编译器来传输,通常使用babel的项目也会使用babel来传输typescript。在这种情况下,typescript编译器将只处理类型文件(.d.ts)
即使您使用typescript编译器来传输ts代码,然后使用babel再次传输,这不是通常的设置,它仍然非常好
所以你的代码很可能不会被翻译两次