從 Babel 遷移到 Typescript
以下這段 ES7 代碼,透過 babel a.ts -d . --optional runtime
之後,
產出的 a.js
,可以簡單地再透過 node a.js
得到正確的運行結果。
// a.ts
import fetch from 'node-fetch'
!async function(){
let HTMLString = await fetch('http://www.google.com.tw').then(response => response.text())
console.log(HTMLString)
}()
但,當我想使用 typescript 1.5 作同樣的事情時,卻不知如何完成。
因為它會提示:cannot find module 'node-fetch'
// tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"target": "es5",
"module": "cmd"
}
}
請問我漏了什麼了嗎?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Babel 会把代码翻译成 ES5 的 js,但是 TypeScript 不会。
如果你在 TypeScript 中使用了 6 的特性,它会直接翻译成 ES6 的 js。
如果指定了 --target es5,它 TypeScript 就不支持 6 的特性(但支持 TypeScript 的特性,比如类等)
然后tsconfig中,target设置es6,module设置commonjs