typescript项目配置路径别名,路径映射

在vue项目中,我们可以利用“@”来指代src目录,在普通webpack项目中,我们也可以通过配置webpack的config来指定路径别名,但是在typescript+webpack项目中我们该怎么配置别名呢?

参考文档https://www.tslang.cn/docs/handbook/module-resolution.html 可知typescript是通过tsconfig.json中的paths项来进行配置的。这里以配置“src”为项目src目录来作为演示。

tsconfig.json:

    "paths": {
      "src/*":[
        "src/*"
      ]
    }

这将告诉编译器,在解析路径的时候统一将src解析为baseUrl下的src目录。

之后配置webpack:

  resolve: {
    alias: {
      'src': path.resolve(__dirname, "../src/") //src文件夹路径
    },
  },

如果你使用了tslint,还要配置tslint.json以告诉tslint将src加入白名单。

"rules": {
"no-implicit-dependencies":[true,["src"]],
"no-submodule-imports":[true,"src"],
},