Compiler ä½¿ç¨ ContextModuleFactory 模åä» webpack ç¬ç¹ç require.context API çæä¾èµå
³ç³»ãå®ä¼è§£æè¯·æ±çç®å½ï¼ä¸ºæ¯ä¸ªæä»¶çæè¯·æ±ï¼å¹¶ä¾æ®ä¼ 鿥ç regExp è¿è¡è¿æ»¤ãæåå¹é
æåçä¾èµå
³ç³»å°è¢«ä¼ å
¥ NormalModuleFactoryã
ContextModuleFactory ç±»æ©å±äº Tapable å¹¶æä¾äºä»¥ä¸ççå½å¨æé©åã
ä½ å¯ä»¥å使ç¨ç¼è¯å¨é©å䏿 ·ä½¿ç¨å®ä»¬ï¼
ContextModuleFactory.hooks.someHook.tap(/* ... */);
ä¸ compiler 䏿 ·ï¼tapAsync å tapPromise æ¯å¦å¯ç¨
åå³äºé©åçç±»åã
AsyncSeriesWaterfallHook
å¨è§£æè¯·æ±çç®å½ä¹åè°ç¨ã请æ±å¯ä»¥éè¿è¿å false æ¥å¿½ç¥ã
dataAsyncSeriesWaterfallHook
å¨è¯·æ±çç®å½è§£æåè°ç¨ã
dataSyncWaterfallHook
读åç®å½å 容åè°ç¨ãå¨é彿¨¡å¼ä¸ï¼ä¹ä¼è¯»åæ¯ä¸ªåç®å½ãåè°åæ°æ¯ä¸ä¸ªå 嫿¯ä¸ªç®å½ä¸æææä»¶åæä»¶å¤¹åç§°çæ°ç»ã
fileNamesAsyncSeriesWaterfallHook
å¨å建请æ±ä¹åä½ä¾æ® regExp è¿è¡è¿æ»¤ä¹åï¼ä¸ºæ¯ä¸ªæä»¶è°ç¨ã
request options