Webpack 有很多种接入 TypeScript 的方法,比如 ts-loader、awesome-ts-loader、 babel-loader等。

使用ts-loader

  1. npm i -D typescript ts-loader

配置webpack.config.js

  1. const path = require('path');
  2. module.exports = {
  3. /* ... */
  4. module: {
  5. rules: [
  6. {
  7. test: /\.ts$/,
  8. use: 'ts-loader'
  9. },
  10. ],
  11. },
  12. resolve: {
  13. extensions: ['.ts', '.js'],
  14. }
  15. };

resolve这一段的意思就是: 分析依赖的时候遇见.ts或者.js结尾的文件自动解析,就是不用写明是xyz.ts而写成xyz就行。
具体ts相关的配置写在tsconfig.json中就行。

使用@babel/preset-typescript

使用@babel/preset-typescript 更为简单,但是只是简单完成代码转换,并未做类似 ts-loader 的类型检查工作。

  1. // 安装完成后
  2. module.exports = {
  3. /* ... */
  4. module: {
  5. rules: [
  6. {
  7. test: /\.js$/,
  8. use: [
  9. {
  10. loader: 'babel-loader',
  11. options: {
  12. presets: ['@babel/preset-typescript'],
  13. },
  14. },
  15. ],
  16. },
  17. ],
  18. },
  19. };