gpt4 book ai didi

javascript - 如何创建导出现有模块的 .d.ts 文件?

转载 作者:行者123 更新时间:2023-12-02 15:38:10 24 4
gpt4 key购买 nike

我在 TypeScript 项目中同时使用 dust.js (具体来说,dustjs-linkedin)和 dustjs-helpers。我从definitelyTyped 中得到了dustjs-linkedin 的类型,但是我在使用dustjs-helpers 时遇到了麻烦。基本上,我只想声明一个名为 dustjs-helpers 的模块,并让它正确导出 dustjst-linkedin 模块。这意味着任何时候您调用 import helpers = require('dustjs-helpers'); 您都应该能够访问常规 Dust 默认使用的所有函数。

Dust 的类型文件声明其模块如下:声明模块“dustjs-linkedin”{ ... }。我希望我可以做类似以下的事情,但我收到错误......

/// <reference path="../dustjs-linkedin/dustjs-linkedin.d.ts" />

declare module "dustjs-helpers" {
import dust = require("dustjs-linkedin")
export = dust;
}

谁能帮帮我吗?

最佳答案

有点复杂,但我已经验证这有效:

declare module "dustjs-helpers" {
import dust = require("dustjs-linkedin")

// Bring into a type
type Dust = typeof dust;

// Specify extensions
type Extensions = {
anotherFunc : Function;
}

// Combine types
type DustExtended = Dust & Extensions;

// Create var for export
var dustExtended: DustExtended;

// Export
export = dustExtended;
}

关于javascript - 如何创建导出现有模块的 .d.ts 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32769814/

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