從 Babel 遷移到 Typescript

发布于 2022-09-01 19:19:14 字数 639 浏览 8 评论 0

以下這段 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

总攻大人 2022-09-08 19:19:14

Babel 会把代码翻译成 ES5 的 js,但是 TypeScript 不会。

如果你在 TypeScript 中使用了 6 的特性,它会直接翻译成 ES6 的 js。

如果指定了 --target es5,它 TypeScript 就不支持 6 的特性(但支持 TypeScript 的特性,比如类等)

审判长 2022-09-08 19:19:14
npm install typescript@next

然后tsconfig中,target设置es6,module设置commonjs

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文