TypeScript path mapping 编译后出现Cannot find module的问题


 文件结构:

- src
    - folder1
        - app1.ts
    - folder2
        - app2.ts
- tsconfig.json

tsconfig.json

{
    "compilerOptions": {
        "target": "ES6",
        "module": "commonjs",
        "baseUrl": ".",
        "paths": {
            "@folder2/*": ["src/folder2*"]
        }
    }
}

app1.ts

import xxx from '@folder2/app2';

class app1 {
  
    ......    
  
}

app2.ts

class xxx {
 
   ......   
 
}
 
export default xxx;

编译后,报错:Error: Cannot find module '@folder2/app2'。

 

这段代码在typeScript并没有检测到错误,但编译为javascript后,路径并没有映射过去。javascript能访问的路径应该是../folder2/app2.ts。本身tsconfig.json提供paths这个属性就是为了解决path hell(../../../../xxx.js)这样原问题,但是编辑为javascript后却依然未能解决这个问题。typescript官方至今仍未对这个缺陷作出过任何解释。

解决这个问题,只能走其它方式:

 项目中引入module-alias。

参考:https://www.npmjs.com/package/module-alias


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM