Angular import path 最佳實(shí)踐

1. 前言

當(dāng)我們的Angular項(xiàng)目越來(lái)越大之后,我們會(huì)發(fā)現(xiàn)我們的每一個(gè)模塊都散落在很深層次的路徑當(dāng)中,當(dāng)我們需要導(dǎo)入某個(gè)模塊或者組件時(shí),我們會(huì)發(fā)現(xiàn)我們import的TypeScript路徑可讀性非常的差。當(dāng)然你可以說(shuō),我們強(qiáng)大的IDE不就幫我把這個(gè)解決了嗎,其實(shí)我們完全可以寫(xiě)得更優(yōu)雅一些,import的path完全不需要那么長(zhǎng),那么怎么解決這個(gè)問(wèn)題呢?答案就是:TypeScript Path Mapping

// 這里舉例說(shuō)明
import { something } from '../../../../../shared/shared.service';

2. How do you do it?

找到你Angular項(xiàng)目目錄下的tsconfig.json文件,然后編輯paths配置,使用你自定義的有意義的路徑名映射你要找到全路徑。

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2018",
      "dom"
    ],
    "paths": {
      "@stubs/*": [
        "./src/app/stubs/*"
      ],
      "@state/*": [
        "./src/app/state/*"
      ],
      "@shared/*": [
        "./src/app/shared/*"
      ]
    }
  },
  "angularCompilerOptions": {
    "fullTemplateTypeCheck": true,
    "strictInjectionParameters": true
  }
}

配置完成之后,接下來(lái)就可以?xún)?yōu)雅的更改我們之前的代碼啦~

// 配置好tsconfig.json中的paths之后的版本
import { something } from '@shared/shared.service';
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容