仅导入 typescript 模块声明
Posted
技术标签:
【中文标题】仅导入 typescript 模块声明【英文标题】:Import typescript module declarations only 【发布时间】:2021-11-04 05:01:09 【问题描述】:我有多个 React 项目,每次都需要声明相同的打字稿模块,例如字体.d.ts:
declare module "*.woff";
declare module "*.woff2";
或 images.d.ts:
declare module "*.jpg"
const src: string;
export default src;
declare module "*.png"
const src: string;
export default src;
我想创建一个包含此类类型的包,该包将包含在我正在处理的每个项目中,因此我不会在每个项目中创建和更新模块声明文件。不知道该怎么做?
【问题讨论】:
【参考方案1】:不知道该怎么做?
创建代码
npm init -y
.
在你的 package.json 中添加:"types": "/index.d.ts"
将您的包裹命名为尚未使用的名称。
使用您要包含的内容创建一个文件index.d.ts
。
npm publish
使用代码
安装你的包npm i your-package
。
将types: ['your-package']
添加到 tsconfig.json。
我在这里做了一些假设,比如发布到 npm 的能力,但这应该有助于您进一步研究并解决您的特殊要求。玩得开心?
【讨论】:
是否可以在另一个现有包中定义它们,其中index.d.ts
已经构建到 /dist
并且无法在 package.json 中向 "types"
添加其他文件? (因为不允许使用数组)以上是关于仅导入 typescript 模块声明的主要内容,如果未能解决你的问题,请参考以下文章
Typescript - 内部模块中的导入声明不能引用外部模块