问题标签 [tsconfig-paths]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - 如何在库项目中拥有绝对导入路径?
我有一个库,其工作区包含两个项目,一个用于库本身,一个用于测试应用程序。
在工作区tsconfig.json
文件中,我配置了一些@app
和@lib
路径:
有一个projects/midi-lib/tsconfig.lib.json
文件扩展了上述tsconfig.json
文件:
有一个public-api.ts
文件包含:
我可以将此库与测试应用程序一起使用。
但是当我尝试在另一个客户端应用程序中使用它时,在另一个工作区中,作为 Node 模块导入时,我在未知路径上遇到很多错误Can't resolve '@lib/...'
如何表达库路径以便它们在客户端应用程序中公开?或者打包库时如何翻译库路径?
作为一个附带问题,我想知道为什么不以相反的方式进行扩展。为什么不是在tsconfig.json
文件上扩展的projects/midi-lib/tsconfig.lib.json
文件?
这是我打包然后使用库的方式:
package.json
打包库,在父文件的scripts数组中添加以下脚本
并运行命令:npm run package
然后安装依赖
并在应用程序模块中导入模块app.module.ts
文件中有:
最后将组件插入模板
当库安装在客户端应用程序中时,目录.d.ts
中有很多文件node_modules/midi-lib
:
喜欢这个lib/service/melody.service.d.ts
文件
可以看出,它包含对@lib
路径映射的引用,这在客户端应用程序中是未知的。
我也尝试使用该baseUrl
属性作为解决方法,但这也无济于事,因为在安装库时,baseUrl
未指定此值。
为什么用命令打包库npm run package
不能解析paths
映射?
nestjs - 如何为`tsc-watch`注册`tsconfig-paths`?
我正在尝试为运行它的应用程序设置相对路径tsc-watch
。但是当我尝试从功能文件夹访问共享文件夹中的枚举时,我得到“错误:找不到模块”。运行应用程序工作正常。我如何使用with ?ts-node
tsconfig-paths
tsc-watch
这是我的项目的回购:https ://github.com/Nako68l/nestjs-task-management
pm2 - 如何在 pm2 中使用 tsconfig-paths?
我正在尝试使用 pm2 部署我的 typescript 项目,但该参数似乎无法正常工作。
这是生态系统.config.yml:
当我运行 pm2 start Ecosystem.config.yml 并检查日志时:
我的 tsconfig.json 是:
路径别名似乎无法正常工作。它在没有 pm2 的情况下运行良好(这是一个 nestjs 项目):
谁能帮我解决这个问题?谢谢。
typescript - tsc - 不编译别名路径
我有打字稿并使用别名。这是 tsconfig.json 的一部分
通过设置基本网址,我可以改变
至
问题是 tsc 将 src 文件夹编译为 dist 文件夹,因此用户导入路径应更改为相对路径,如下所示:
但它没有改变,所以我收到以下错误:
我寻找答案,但没有运气。
angular - 尝试在 Angular 项目中引用不同文件夹中的文件
场景:
我的 Angular 项目中有以下结构:
tsconfig.json
在Folder1
包含
这样file1.1.1
就可以引用file1.2.1
asFolder1.2/file1.2.1
而不是.../Folder1.2/file1.2.1
.
问题:
file2.1
需要使用file1.1.1
。当我构建项目时,file2.1
抛出它找不到的错误Folder1.2/file1.2.1
。
我试过的:
我认为这只是因为文件的方式file2.1
没有别名。所以在我添加Folder1.2
Folder1
tsconfig.json
Folder2
我仍然得到同样的错误。
有谁知道我应该如何处理这个?
node.js - Typescript 路径别名在运行时未正确解析
我正在运行 VS Code,目前正在尝试在我的打字稿项目上设置一些别名。
我的开发设置基于 nodemon 和 ts-node,代码被编译到 dist 文件夹。
到目前为止,我成功让 Typescript Hero 使用别名管理导入:
到目前为止,我的文件夹结构是:
这是第一个失败的别名导入。
但是,我收到一个错误: “cross-env NODE_ENV=development nodemon ts-node ./src/server.ts”上的“找不到模块'@shared/debug/Print.class' ”。
这就是我的立场。
现在,我已经阅读了一些关于 SO 的问答,似乎即使我设法使别名在 dev 中工作,它也会在生产中失败,因为我从 Typescript src 文件夹运行并且我的可交付成果内置于 dist ? 如果是这样,有什么办法可以补救吗?非常感谢
typescript - 你能在不捆绑特定路径模块的情况下让 webpack 解析 tsconfig 路径吗?
我有一个tsconfig.json
文件,其中包含paths
要在我的打字稿中使用和tsconfig-paths-webpack-plugin
供 webpack 使用的文件。但是,其中一个路径引用了位于项目目录之外的共享库。当我尝试将应用程序与 webpack 捆绑时,它会伸出手并适当地获取库并将其添加到包中。有没有办法让它不捆绑这个外部模块,而只是让它在捆绑时调整 require 语句?
我已经尝试externals
在 webpack 中的选项中添加一个正则表达式,这样可以防止模块被捆绑。但是,tsconfig-paths-webpack-plugin
不会评估 import 语句,它保持@libs/[MY_LIB]
在编译代码中,而不是"../../../libs/[MY_LIB]"
:
最终目标
typescript - 是否可以将环境变量添加到 tsconfig.json 文件?
我有一个 tsconfig.json 文件,其中包含
我想用环境变量替换../../ 。有哪些可能的解决方案?
node.js - 无服务器框架无法识别 tsconfig 的路径
我正在尝试使用无服务器框架将我的 Node.js 应用程序部署到 Lambda,但是,我的 Node 代码使用来自 tsconfig.json 的路径来引用导入,但无服务器部署过程失败。如何连接 serverless.yml 以确认和使用 tsconfig.json 中定义的路径?
我已经安装了 serverless-plugin-typescript,但它似乎无法识别来自 tsconfig 的路径。
无服务器.yml
tsconfig.ts