精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

前端常用開發(fā)工具的路徑解析配置

開發(fā) 開發(fā)工具
隨著需求的迭代與功能的完善,我們的項目也會愈發(fā)龐大而復雜,目錄層級結(jié)構(gòu)也會不斷深化;以 React 實踐清單中討論的 React 項目組織方式為例,我們常會分為 components, containers, services, apis, ducks, store, i18n 等等目錄。

本文是 Webpack CheatSheet | Webpack 基礎(chǔ)與實踐清單的一部分,項目代碼可以參考 fe-boilerplate | 多技術(shù)棧前端項目模板

[[231939]]

路徑解析

隨著需求的迭代與功能的完善,我們的項目也會愈發(fā)龐大而復雜,目錄層級結(jié)構(gòu)也會不斷深化;以 React 實踐清單中討論的 React 項目組織方式為例,我們常會分為 components, containers, services, apis, ducks, store, i18n 等等目錄,如果全部以相對路徑方式引入,可能會變成這個樣子:

  1. import React from 'react'
  2. import { connect } from 'react-redux'
  3.  
  4. import { someConstant } from './../../config/constants'
  5. import MyComponent from './../../../components/MyComponent'
  6. import { myActionCreator } from './../../../ducks/someReducer'

毫無疑問,這樣繁多的引用不可避免地會導致代碼之間耦合度的增加,使得更難以重構(gòu)或者優(yōu)化。在適當?shù)啬K劃分的基礎(chǔ)上,我們希望在跨模塊引用時,能夠以絕對路徑的方式,譬如:

  1. import React from 'react'
  2. import { connect } from 'react-redux'
  3. import { someConstant } from 'Config/constants'
  4. import MyComponent from 'Components/MyComponent'
  5. import { myActionCreator } from 'Ducks/someReducer'

當然,我們并不提倡過度地使用絕對路徑引入,對于相對關(guān)系固定的組件,還是應(yīng)該優(yōu)先使用相對路徑方式引入。

Webpack

如前文介紹,Webpack 允許我們使用 resolve.alias 來自定義路徑解析:

  1. module.resolve = { 
  2.   alias: { 
  3.     Config: path.resolve(__dirname, '..''src''config'), 
  4.     Components: path.resolve(__dirname, '..''src''components'), 
  5.     Ducks: path.resolve(__dirname, '..''src''ducks'), 
  6.     Shared: path.resolve(__dirname, '..''src''shared'), 
  7.     App: path.join(__dirname, '..''src'
  8.   } 
  9. }; 

開發(fā)工具的支持是不可避免地因素,值得高興的是 VSCode 允許我們在 jsconfig.json 中配置解析規(guī)則,Auto-Import 這樣的自動導入工具同樣能識別這些規(guī)則:

  1.   "compilerOptions": { 
  2.     "target""es2017"
  3.     "allowSyntheticDefaultImports"false
  4.     "baseUrl""./"
  5.     "paths": { 
  6.       "Config/*": ["src/config/*"], 
  7.       "Components/*": ["src/components/*"], 
  8.       "Ducks/*": ["src/ducks/*"], 
  9.       "Shared/*": ["src/shared/*"], 
  10.       "App/*": ["src/*"
  11.     } 
  12.   }, 
  13.   "exclude": ["node_modules""dist"

ESLint

ESLint 同樣是前端開發(fā)不可或缺的部分,我們可以使用 eslint-import-resolver-webpack 來擴展 eslint-import 的模塊解析,使用 npm 安裝該模塊之后進行如下配置:

  1. --- 
  2. settings: 
  3.   import/resolver: webpack  # take all defaults 

或者指定文件名:

  1. --- 
  2. settings: 
  3.   import/resolver: 
  4.     webpack: 
  5.       config: 'webpack.dev.config.js' 
  6.       config-index: 1   # optional, take the config at index 1 

對于未使用 Webpack 的項目,則可以考慮使用 eslint-import-resolver-alias:

  1. // .eslintrc.js 
  2. module.exports = { 
  3.   settings: { 
  4.     'import/resolver': { 
  5.       alias: { 
  6.         map: [ 
  7.           ['babel-polyfill''babel-polyfill/dist/polyfill.min.js'], 
  8.           ['helper''./utils/helper'], 
  9.           ['material-ui/DatePicker''../custom/DatePicker'], 
  10.           ['material-ui''material-ui-ie10'
  11.         ], 
  12.         extensions: ['.ts''.js''.jsx''.json'
  13.       } 
  14.     } 
  15.   } 
  16. }; 

Jest

我們可以在 package.json 中的 jest 配置項中添加 moduleNameMapper 屬性:

  1. "jest": { 
  2.   "moduleNameMapper": { 
  3.     "^Config(.*)$""<rootDir>/src/config$1"
  4.     "^Components(.*)$""<rootDir>/src/components$1"
  5.     "^Ducks(.*)$""<rootDir>/src/ducks$1"
  6.     "^Shared(.*)$""<rootDir>/src/shared$1"
  7.     "^App(.*)$""<rootDir>/src$1" 

TypeScript

TypeScript 的配置類似于 VSCode,在 tsconfig.json 的 compilerOptions 選項中添加如下配置:

  1.   "baseUrl""."
  2.   "paths": { 
  3.     "c-apis/*": ["src/apis/*"], 
  4.     "c-models/*": ["src/models/*"], 
  5.     "c-stores/*": ["src/stores/*"], 
  6.     "c-utils/*": ["src/shared/*"
  7.   } 

 【本文是51CTO專欄作者“張梓雄 ”的原創(chuàng)文章,如需轉(zhuǎn)載請通過51CTO與作者聯(lián)系】

戳這里,看該作者更多好文

責任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2011-06-08 13:20:56

Android ARM

2020-06-24 08:24:09

Web開發(fā)工具

2021-01-04 14:41:28

開發(fā)前端工具

2023-04-09 14:49:57

開發(fā)語言Kotlin

2020-11-19 10:05:03

Java

2021-02-05 23:23:55

Web開發(fā)工具

2017-05-08 16:17:54

前端開發(fā)工具

2021-10-19 09:44:22

開發(fā)測試工具

2011-11-22 13:44:18

Web

2010-05-28 13:38:29

Linux開發(fā)工具

2010-07-14 13:57:30

Perl開發(fā)工具

2019-06-11 09:00:00

阿里后端開發(fā)工具

2020-06-24 09:38:17

前端開發(fā)工具

2011-08-25 13:58:25

LUA開發(fā) 工具安裝

2021-04-01 14:01:13

開發(fā)工具前端

2021-03-27 00:05:35

前端開發(fā)工具

2021-11-15 09:00:00

Web開發(fā)工具

2017-09-13 16:54:38

web

2010-03-15 18:39:00

Python程序員

2013-11-21 10:21:25

點贊
收藏

51CTO技術(shù)棧公眾號

精品88久久久久88久久久 | 99精品一区二区三区的区别| 一本色道久久综合亚洲| 欧美日韩亚洲一区在线观看| 操欧美女人视频| 奇米影视7777精品一区二区| 欧美多人爱爱视频网站| 欧美成人国产精品一区二区| 国产视频一区二区在线播放| 欧美性猛交xxxx偷拍洗澡| 亚洲最新免费视频| 日本一本草久在线中文| 国产乱码精品1区2区3区| 日本欧美爱爱爱| 麻豆亚洲av成人无码久久精品| 国产日韩欧美一区二区三区| 精品国内二区三区| 亚洲男人天堂av在线| 色在线视频观看| 夜夜嗨av一区二区三区四季av| 水蜜桃一区二区三区| 免费观看国产精品| 国产成人亚洲精品狼色在线| 国产欧美一区二区三区四区| 91丝袜一区二区三区| 韩日精品视频| 久久亚洲综合国产精品99麻豆精品福利| 国产全是老熟女太爽了| 理论片一区二区在线| 欧美一区二区三区四区高清| 欧美精品成人网| 忘忧草在线日韩www影院| 亚洲国产精品久久人人爱蜜臀| 在线看成人av电影| 北岛玲一区二区三区| 久久精品无码一区二区三区| 韩国成人av| 免费a级片在线观看| 成人视屏免费看| 999精品视频一区二区三区| 国产精品人妻一区二区三区| 精品亚洲免费视频| 国产日韩中文字幕| 亚洲天堂网在线观看视频| 日韩av网站在线观看| 国产成人欧美在线观看| 黄色在线视频网址| 肉丝袜脚交视频一区二区| 97在线观看视频| 欧美福利视频一区二区| av成人国产| 欧美专区中文字幕| 天天干天天操天天爱| 久久中文在线| 国产精品久久久久久久久久久久| 波多野结衣爱爱| 蜜臀av一区二区在线免费观看| 国产99在线|中文| 欧美视频xxxx| 精品一区二区三区蜜桃| 亚洲综合小说区| 欧美 日韩 国产 成人 在线 91| 成人激情文学综合网| 国产日韩欧美一区二区三区四区 | 亚洲国产精品成人精品| 国产熟女高潮一区二区三区 | 一级一片免费播放| 丝袜在线观看| 天天亚洲美女在线视频| 91av俱乐部| 亚洲人成网站在线在线观看| 在线成人免费视频| 久久人妻少妇嫩草av蜜桃| 欧美freesex8一10精品| 亚洲欧美日韩区| 女人18毛片毛片毛片毛片区二| 欧美在线高清| 欧洲一区二区视频| 亚洲综合网av| 成人av免费在线观看| 欧美一区二区视频在线| 黄色免费网站在线| 欧美日韩激情视频| 九色porny自拍| 国产96在线亚洲| 国产香蕉精品视频一区二区三区| 中文字幕五月天| 亚洲三级免费| 91精品美女在线| 欧美 日韩 国产 成人 在线| 国产欧美日韩综合精品一区二区 | 大胸美女被爆操| 欧美日韩综合| 国产高清视频一区三区| 不卡的日韩av| 欧美激情综合五月色丁香| 精品人妻人人做人人爽| 高清电影一区| 精品精品国产高清一毛片一天堂| 国产一区二区三区精品在线| 欧美视频二区| 国产狼人综合免费视频| 性感美女视频一二三| 亚洲天堂成人在线观看| 国内性生活视频| 日本精品一区二区三区在线观看视频| 国产视频自拍一区| 久久久综合久久久| 精品夜夜嗨av一区二区三区| 欧美中文娱乐网| av资源网在线播放| 欧美日韩精品系列| 亚欧洲乱码视频| 亚洲激情婷婷| 91久久偷偷做嫩草影院| 91网在线播放| 色婷婷综合在线| 中文字幕一区二区三区乱码不卡| 天天影视欧美综合在线观看| 日韩美女免费观看| 污污网站免费在线观看| 伊人色综合久久天天人手人婷| 特级丰满少妇一级| 国产在线观看91一区二区三区| 久久久久久中文字幕| 成人av手机在线| 亚洲欧美另类小说视频| 欧美特级aaa| 国产一区二区精品福利地址| 秋霞av国产精品一区| 亚洲精品一区二区三区四区 | 日韩不卡在线播放| av电影天堂一区二区在线观看| 国产激情片在线观看| 日韩毛片免费看| 日韩中文字幕在线视频| 国产乱码77777777| 国产婷婷色一区二区三区四区 | 欧美暴力调教| 亚洲欧美日本另类| 久久久久久久久久成人| 久久久99久久| 天天干在线影院| 日韩中文在线电影| 国产欧美日韩视频| 麻豆视频网站在线观看| 欧美丰满美乳xxx高潮www| 日本黄区免费视频观看 | 亚洲自拍偷拍精品| 在线日韩视频| 久久99精品久久久久久三级| 午夜影院在线播放| 亚洲日本欧美日韩高观看| 国产精品xxxxxx| 最好看的中文字幕久久| 色哟哟在线观看视频| 国产精品jizz在线观看美国| av一区二区在线看| 国产激情视频在线观看| 欧美一区中文字幕| 亚洲国产精品成人无久久精品| av在线不卡观看免费观看| 97超碰青青草| 第一sis亚洲原创| 成人亚洲欧美一区二区三区| 亚洲欧美成人影院| 日韩成人xxxx| 波多野结衣激情视频| 中文字幕中文字幕一区| 在线播放av网址| 欧美一级播放| 中文字幕中文字幕一区三区| 一区二区三区免费在线看| 国模视频一区二区三区| 久久精品色图| 91精品国产综合久久香蕉麻豆| 精品久久免费视频| 国产亚洲午夜高清国产拍精品| 一级黄色在线播放| 亚洲毛片在线| 在线视频一区观看| 久9re热视频这里只有精品| 国产精品福利网| 欧美韩日亚洲| 自拍偷拍免费精品| 香港一级纯黄大片| 制服丝袜中文字幕一区| 天天操天天摸天天干| 成人免费小视频| 亚洲午夜福利在线观看| 国模少妇一区二区三区| 能在线观看的av| 欧美欧美天天天天操| 久久99精品久久久久久水蜜桃| 9999精品免费视频| 欧美壮男野外gaytube| 欧美亚洲系列| 日韩中文字幕视频在线| 手机在线不卡av| 欧美精品在线观看一区二区| 国产精品男女视频| 亚洲一区二区视频在线观看| 久久久久久久久福利| 成人精品在线视频观看| 亚洲怡红院在线| 手机精品视频在线观看| 欧美激情视频免费看| 91精品国产91久久久久久密臀 | 91精品专区| 亚洲精品视频播放| 黑人乱码一区二区三区av| 欧美巨大另类极品videosbest | 一级做a爰片久久毛片| 一区二区三区中文在线| 天堂网中文在线观看| 久久一区二区三区四区| 在线免费播放av| 国产成a人无v码亚洲福利| 欧美精品 - 色网| 麻豆精品在线播放| 欧美精品无码一区二区三区| 99国产精品久久久久久久 | 九九九久久久久| 亚洲日本在线天堂| 亚洲精品自拍视频在线观看| 国产日韩av一区| 88久久精品无码一区二区毛片| 99视频一区二区| 女同性恋一区二区三区| 高清免费成人av| 亚洲国产综合av| 国产一区二区三区美女| 在线观看av免费观看| 国产最新精品免费| 国产欧美激情视频| 经典三级在线一区| caoporm在线视频| 激情伊人五月天久久综合| 在线观看亚洲色图| 美女免费视频一区二区| 天天爱天天操天天干| 青草国产精品久久久久久| 国产一区二区在线免费播放| 七七婷婷婷婷精品国产| 亚洲福利精品视频| 美女视频免费一区| 91热视频在线观看| 国产麻豆精品theporn| www.成人黄色| 国产91精品精华液一区二区三区 | 中文字幕国产一区| youjizz亚洲女人| 中文字幕在线不卡| 亚洲国产精品免费在线观看| 亚洲自拍欧美精品| 日韩欧美不卡视频| 欧美性色19p| 亚洲 小说区 图片区| 欧美日韩黄色一区二区| 999久久久久| 亚洲国产精品免费| 牛牛澡牛牛爽一区二区| 中文字幕亚洲欧美一区二区三区| 快射视频在线观看| 欧美国产日韩精品| 性欧美18~19sex高清播放| 国产高清视频一区三区| 91麻豆精品国产91久久久更新资源速度超快| 亚洲精品日韩av| 国产主播性色av福利精品一区| 欧美美乳视频网站在线观看| 日韩av专区| 国产尤物av一区二区三区| 亚洲制服av| 热久久久久久久久| 成人免费毛片app| 亚洲图片第一页| 亚洲综合区在线| 波多野结衣视频在线观看| 日韩亚洲欧美在线| 免费资源在线观看| 久久成人精品一区二区三区| av免费不卡国产观看| 国产精品久久久久久五月尺| 91国内精品| 无遮挡亚洲一区| 欧美日韩免费| 99视频精品免费| 高清不卡一区二区| 国产aaaaaaaaa| 精品成人乱色一区二区| 97精品人妻一区二区三区| 亚洲精品久久久一区二区三区 | 亚洲一区二区三区成人在线视频精品| 欧美巨大xxxx| 可以在线看黄的网站| 鲁大师成人一区二区三区 | 极品一区美女高清| 亚洲精品一区二区三| 亚洲激情网站| 天堂在线精品视频| 国产欧美精品一区二区三区四区| avove在线播放| 欧美性xxxxx极品娇小| www日本高清| 色99之美女主播在线视频| 爱福利在线视频| 91精品久久久久| 欧美精品一区二区久久| aa在线观看视频| 国产精品一区不卡| 国产免费美女视频| 欧美自拍丝袜亚洲| 日av在线播放| 97在线视频免费| 99精品在免费线中文字幕网站一区 | 国产熟女一区二区丰满| 欧美黄色成人网| 亚洲免费成人网| 中文字幕亚洲第一| 桃花岛tv亚洲品质| 精品国产二区在线| 欧美三级第一页| 深夜福利网站在线观看| 国产精品水嫩水嫩| 狠狠狠狠狠狠狠| 日韩av中文字幕在线免费观看| 在线欧美三级| 亚洲综合在线小说| 亚洲天堂免费| 三级一区二区三区| 国产精品的网站| 亚洲专区在线播放| 日韩在线视频导航| jizz久久久久久| 日韩偷拍一区二区| 免费在线欧美视频| 国产又粗又长又黄的视频| 欧美日韩精品一区二区在线播放| yw在线观看| 国产日韩在线一区| 正在播放日韩欧美一页| 真实乱偷全部视频| 一区二区三区中文免费| 农村少妇久久久久久久| 97香蕉超级碰碰久久免费软件 | 国产直播在线| 国产在线欧美日韩| 亚洲欧美高清| av女人的天堂| 欧美日韩综合在线免费观看| 自拍视频在线网| 91在线观看免费| 亚洲国产1区| 中文字幕一区二区人妻在线不卡| 色婷婷av一区二区三区软件| av小片在线| 亚洲一区二区中文| 亚洲福利一区| 蜜桃av免费看| 欧美美女bb生活片| 亚洲小说区图片| 久久免费看av| 麻豆精品精品国产自在97香蕉| 无码黑人精品一区二区| 亚洲爱爱爱爱爱| 69堂免费精品视频在线播放| 自拍偷拍亚洲色图欧美| 丁香婷婷深情五月亚洲| 天天操夜夜操视频| xxxxx91麻豆| 成人春色在线观看免费网站| 日本www高清视频| 亚洲欧美偷拍三级| 色综合888| 91亚洲国产成人精品性色| 在线综合亚洲| 久艹在线观看视频| 亚洲精品成人av| 日韩黄色碟片| 国产精品沙发午睡系列| |精品福利一区二区三区| 四虎精品一区二区三区| 国产精品美女在线观看| 狠狠爱www人成狠狠爱综合网| 日本丰满少妇裸体自慰| 在线不卡免费av| 波多野结衣久久精品| 中文字幕乱码免费| 久久久久久久性| 亚洲精品免费在线观看视频| 国产精品久久二区| 亚洲小说区图片区| 午夜激情福利电影| 亚洲免费福利视频| 日韩精品成人| av丝袜天堂网| 婷婷综合另类小说色区| 麻豆传媒在线免费看| 欧美一区亚洲二区|