上下文:我们正在开发一个带有React和TypeScript的UI组件库,并将React table用于我们的表组件。该库作为npm包发布,并用于我们的其他项目。
我已在名为“反应表配置”的文件中配置了类型,如“类型/反应表”的文档中所述。d、 ts。此外,我还创建了一个新类型CustomColumn。它基于列定义,并扩展其功能以支持嵌套字符串访问器(以便TypeScript可以识别
foo.bar
是否是给定表数据的有效字符串访问器)。
目标:我想为我们的库用户提供这种改进的TypeScript支持。我特别希望他们能够使用自定义列。
问题:当我在另一个项目中安装库软件包时,我无法访问为react table配置的类型。它们甚至不包括在包装中。
如果可能的话,我希望避免发布单独的打字包,尽管我认为这种方法可行。
到目前为止,我所尝试的是:我很惊讶这并没有立即奏效,因为我们成功地使用类似的扩展类型声明机制扩展了情感主题。为了使库用户可以使用自定义主题,我们只需将
emotion.d.ts
重命名为emotion.ts
。
我已经尝试了相同的
react-table-config.d.ts
(=
在解决了产生的类型冲突后,
react-table-config.d.ts
现在由转译器生成并包含在包中,但是当我在其他项目中使用它们时,我的自定义类型仍然没有被使用。
到目前为止,我尝试过的其他事情:
适配compilerOptions.type组件库tsconfig.json
中的根
- 适配
compilerOptions.paths
在tsconfig.json
的使用库 - 更改导入以尝试使
react-table-config.d.ts
成为环境模块,如本答案所述 - 使用
///
我真的很想理解为什么这不起作用,特别是因为情感的主题覆盖正在起作用。我可以指出的区别是,情感支持即时输入,因此没有单独的类型包。
如果有任何特定的代码会有所帮助,我会尝试提供它(如果可能的话)-但由于这更多的是一个系统性问题,我不想不分青红皂白地发布代码。
匿名用户
我通过创建一个自定义来修复它。d、 使用应用程序的“我的类型”文件夹中的ts文件。在这个文件中,我引用了我的组件库中的自定义类型
/// <reference types="<component-library>/types/react-table" />
在我的组件库类型
文件夹中,我有react-table.d.ts
,其中包含所有类型覆盖。类似
/* eslint-disable */
import { UseRowSelectInstanceProps, UseRowSelectRowProps, UseRowSelectState, UseTableColumnOptions } from 'react-table';
declare module 'react-table' {
export interface ColumnInterface<D extends object = {}> extends UseTableColumnOptions<D> {
collapse?: boolean;
centerHeader?: boolean;
}
export interface TableInstance<D extends object = {}>
extends Omit<TableOptions<D>, 'columns' | 'pageCount'>,
UseTableInstanceProps<D>,
UseRowSelectInstanceProps<D> {}
export interface Row<D extends object = {}> extends UseTableRowProps<D>, UseRowSelectRowProps<D> {}
export interface TableState<D extends object = {}> extends UseRowSelectState<D> {
hiddenColumns?: Array<IdType<D>> | undefined;
}
}
问题内容: 我正在尝试使用此Golang Yelp API软件包。在某些结构中,它使用guregu的null包中定义的类型。 我想声明一个在Yelp API包中定义的结构,其中的某些字段作为值使用(即,该结构,我正在尝试使用)。因此,在我的程序中,我同时导入了Yelp API包和guregu的null包,并尝试使用ip.Lat和ip.Lat为float64s声明该结构。(定义): 但是当我运行该程
问题内容: 抱歉,标题似乎令人困惑,但请按示例进行操作。 假设我有一些带有通用类型参数的Java类: 我可以创建一个类型为存储对象的变量,并将通用参数设置为。Java还允许我将该变量分配给另一个变量,但将通用参数设置为通配符类型: 但是,在使用具有泛型参数的类时,如果将该参数的类型设置为泛型,则无法将该类的对象分配给相同类型/泛型的类型,后者(内部/嵌套)参数是通配符类型: 具体的编译错误是: 凭
问题内容: 我正在一个项目中,正在使用“ database / sql”包。而且我想使用在包“ database / sql”中声明的结构“ DB”作为我的func的参数,因此我可以使用sql.Open()的返回值作为我的func的参数。有可能吗 代码如下: 此代码引发“未定义:DB”错误。 问题答案: 您必须对导入的实体使用限定符-“名称”来自的包名称:
问题内容: 我有使用Maven创建jar文件的要求,但是需要使用“ foobar”扩展名将它们安装到存储库中,如果它们可以具有自己的打包类型,那么这很好,以便我们可以通过打包来识别这些工件。 我可以设置新的包装类型吗? 问题答案: 要做到像你描述,创建包装Maven项目 罐子 (如说在这里,因为不会有魔力的定义)。在src / main / resources / META-INF / plexu
问题内容: 我目前正在通过处理rosalind问题(基本上是一堆与生物信息学相关的代码katas)来学习Go 。 我目前用一种类型代表一条DNA链: 我最初的原因是封装字节片,所以我知道它只包含代表核苷酸的字节:。我意识到这显然没有被保证,因为我可以这样做: 并且不再保证我的dna链包含一个字节数组,其中只有这四个字节中的元素。 由于我的结构仅包含一个字节数组,因此这样做是更好/更理想的方法: 还
在 Gluon 客户端专家插件的官方文档中,“反射列表”部分解释为 将添加到缺省反射列表中的其他完全限定类的列表,该列表已包含大多数 JavaFX 类。 但是,它没有清楚地解释应该在反射列表中添加什么类型的类。在胶子样本的pom.xml文件中,该项目中的一些类没有指定。 那么,我们必须在“反射列表”中指定什么样的类呢?