gpt4 book ai didi

node.js - Typescript无法从套件中找到自定义的第三方类型

转载 作者:行者123 更新时间:2023-12-03 12:10:40 28 4
gpt4 key购买 nike

我用Typescript编写了一个NPM软件包,您可以在这里找到:https://github.com/DiceBear/avatars

该软件包包括自己的声明(使用选项“compilerOptions.declaration”自动生成)和第三方软件包的声明。

{
"compilerOptions": {
"outDir": "./lib",
"moduleResolution": "node",
"declaration": true,
"noImplicitAny": true,
"typeRoots": [
"node_modules/@types",
"typings"
]
},
"include": [
"./src/"
]
}

在“package.json”中,我为生成的声明的路径提供了一个“类型”选项。
{
"name": "@dicebear/avatars",
"version": "2.0.0",
"main": "lib/index",
"types": "lib/index"
}

但是,如果我将软件包安装在最终项目中,Typescript将忽略“typings”下的第三方软件包的声明。

如何使用我自己的第三方包装声明来处理生成的声明?

最佳答案

您的主要项目是monorepo,建议您使用npm link

对于每个包装:

  • cd软件包/程序包名称
  • npm链接

  • 请确保 package.json仅出现一次(而不是像现在这样在 @dicebear/avatarsdependencies中都出现),而不是在根 devDependecies文件中。

    dependencies从文件更改为版本: "@dicebear/avatars": "4.2.0",而不是 "@dicebear/avatars": "file:packages/avatars",(针对所有依赖项)。

    最后,在roor文件夹中,对于每个依赖项
  • npm链接package_name

  • (我的意思是 npm link @dicebear/avatarsnpm link @dicebear/avatars-avataaars-sprites等)

    再次发出 npm install,应该足够了。

    希望这可以帮助。

    关于node.js - Typescript无法从套件中找到自定义的第三方类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48146138/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com