0.0.5 • Published 1 year ago

@shushu.pro/tsconfig v0.0.5

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

@shushu.pro/tsconfig

在项目开发中,import 或者 require 使用 alias 方式简化包的引入路径是很好的一种实践方式,而不同的工具对 alias 的格式要求各不一样,也没有统一的来源,而@shushu.pro/tsconfig即为解决此问题而开发的一个 lib

实现功能

通过读取tsconfig.json的 paths 字段,动态生成webpackresolve.aliaseslintimport/resolver.alias,以及rollupalias

paths配置

{
  "baseUrl": "./",
  "paths": {
    "@/*": ["./src/*"],
    "@api": ["./src/api"],
    "@api/*": ["./src/api/*"]
  }
}

eslint 使用

const { eslintAlias } = require('@shushu.pro/tsconfig');

settings: {
  'import/resolver': {
    // 别名配置
    // https://www.npmjs.com/package/eslint-import-resolver-alias
    alias: {
      map: eslintAlias(),
      extensions: ['.ts', '.tsx', '.js', '.jsx', '.json'],
    },
    node: {
      extensions: ['.js', '.jsx', '.ts', '.tsx'],
    },
  },
}

webpack