我安装了typescript npm包:
npm install typescript
然后跑
node_modules\.bin\tsc doodle.ts -t ES3
doodle.ts
的位置:
var test = document.querySelector('.test');
它在输出doodle.js
中回复了它。
如何在输出中配置它,我得到:
var test = document.getElementsByClassName('.test')[0];
不应-t ES3
标记处理此类兼容性方面吗?
答案 0 :(得分:4)
-es5
,es3
等标志确实支持在先前版本的JavaScript中支持将高级TS / ES6功能转换为等效(如果可能)(例如,使用{{ 3}})。
但是,document.querySelector
不是ECMAScript标准的一部分。它是DOM API的一部分,并被TypeScript忽略。转换器不是试图提供浏览器兼容性,而是语言兼容性。您可能会发现垫片表示他们已经将特定的ECMAScript版本用于将API垫片卷入其中,但这是一个误解,因为它们不完全相同。
使用TypeScript,您仍然需要使用填充程序来删除特定于浏览器的DOM功能。