文件结构:javascript
- src - folder1 - app1.ts - folder2 - app2.ts
- tsconfig.json
tsconfig.jsonjava
{ "compilerOptions": { "target": "ES6", "module": "commonjs", "baseUrl": ".", "paths": { "@folder2/*": ["src/folder2*"] } } }
app1.tstypescript
import xxx from '@folder2/app2'; class app1 { ...... }
app2.tsnpm
class xxx { ...... } export default xxx;
编译后,报错:Error: Cannot find module '@folder2/app2'。json
这段代码在typeScript并无检测到错误,但编译为javascript后,路径并无映射过去。javascript能访问的路径应该是../folder2/app2.ts。自己tsconfig.json提供paths这个属性就是为了解决path hell(../../../../xxx.js)这样原问题,可是编辑为javascript后却依然未能解决这个问题。typescript官方至今仍未对这个缺陷做出过任何解释。app
解决这个问题,只能走其它方式:spa
项目中引入module-alias。code
参考:https://www.npmjs.com/package/module-aliasblog