最近遇到一个Module not found: Error: Can't resolve问题
这个问题的背景是webpack+react+typescript在引用各种包的路径的时候,../../太多了,想简化路径,于是小白的我一开始上来去改tsconfig,改完了还是报Module not found: Error: Can't resolve,于是百度了一番。
网上通篇都会告诉你,tsconfig的path映射改完了,你也要改webpage的alias,有的还会提示你,babel里面还有path映射呢,然后立马就眼晕了,不知所措了。
百度另外一番景象会给你解题思路,你你要用代替@babel/preset-typescript,总的意思就是要你用工具来自动替换path,达到上面的路径映射一致。
看到这里还是各种不明白。直到我偶然间发现其实说了那么多,最最最简单的解决这个问题的办法就是分别在webpack和tsconfig里面更改别名,其实就是在做路径映射的事情,比上面种种都要简单许多倍。
第一步tsconfig中加入:
第二步webpack config中对应改上:
引用的时候,只要@/就代表是绝对路径src/xxxx,就大功告成了。
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...