在我的项目中,我希望有一个包含所有类型脚本定义的文件,如下所示:
type_defs.tsx:
interface T_oauth_obj {
oauth_callback: string,
oauth_consumer_key: string,
oauth_nonce: string,
oauth_signature_method: string,
oauth_timestamp: string,
oauth_version: number,
oauth_signature: string,
}
interface IAuthRequests {
getRequestToken: () => string
Authorize(): void
getAccessToken(): void
}
...
问题是,当我尝试导出typedefs时,如下所示:
export {IAuthRequests, T_oauth_obj}
我得到了错误:
Re-exporting a type when the '--isolatedModules'...
正如我在网络中发现的那样,只能对typedef文件进行默认导出,这意味着我必须为每个类型定义准备一个文件,这绝对是荒谬的!
在我看来,不允许typedefs具有多个非默认导出的约束完全是无稽之谈,并且使编码变得多余且难以重用。拥有一个包含所有typedefs的文件有助于拥有更整洁和可调试的代码。
P.S.
有没有办法实现我所说的目标?
这样试试:
export interface T_oauth_obj {
oauth_callback: string,
oauth_consumer_key: string,
oauth_nonce: string,
oauth_signature_method: string,
oauth_timestamp: string,
oauth_version: number,
oauth_signature: string,
}
export interface IAuthRequests {
getRequestToken: () => string
Authorize(): void
getAccessToken(): void
}
然后导入:
import { T_oauth_obj, IAuthRequests } from "your.file"
定义一个类型 条件1:变量类型是一个字符串。 条件2:变量值不是 get "typescript": "~5.2.2"
我撰写并发表了以下内容:https://github.com/justin-calleja/pkg-dependents 现在我写这个包在TypeScript:https://github.com/justin-calleja/update-dependents 我想在update dependents中重复使用pkg dependents(IndexInfoDict)中定义的类型,我想检查是否有
代码如下,这是一段示例代码 那段for循环是想过滤有效数据。 问题是这段代码ts报错,代码逻辑没问题,问题的根本出在MenuItem的类型定义上,本意是想定义一个二级级联数据MenuItem,之所以使用T extends string而不是直接写为string,是因为在某些交互函数的参数中,希望将代表command的参数定义一个固定的可选数据CommandType。 当有子级数据的时候,关心的是子
试图按照官方手册实现一个模块时,我收到了以下错误消息: 但在我的代码中没有任何地方使用过这个名称。 我该怎么解决这个?
做。 错误是:
我试图在我的主文件。 entry.ts位于src/js/entry, ts,vue的类型定义位于src/js/lib/baul/vue/type/index.d.ts 编译此文件时,输出如下。顺便说一句,typescript的目标是es6和es6模块。 JQuery工作正常(看起来像),所以我用导入替换了对vue类型定义的引用。 它编译得很好,下面是输出: 问题是没有删除类型定义的import语句