小编mas*_*dus的帖子

避免生成测试声明文件

我正在使用 webpack 和 typescript,并且有两个文件夹,src 和 test。

我正在编写一个打字稿库,因此我想将其与源代码的声明文件一起发送(因此在我的 tsconfig.json 中我有声明:true)。但是我不想为我的测试发送声明文件。

如果我在 tsconfig.json 中排除测试文件夹,那么我的 IDE 会在测试文件中给出它无法找到的包的愚蠢错误。

如果我包含它们,似乎无法指定只为 src 目录生成声明文件,而不是为测试目录生成声明文件,无论是在 tsconfig.json 还是在 webpack 配置中。因此,我的测试的声明文件最终位于我的 dist/test 文件夹中(至少不在bundle.js 本身中)。

一种解决方案可能是在 webpack 捆绑包之后运行任务/脚本来清理 dist/test 文件夹,但理想情况下,我宁愿避免仅执行此操作的额外步骤。

我缺少任何选项/配置吗?

我认为不想生成测试文件声明应该非常简单......

typescript webpack

6
推荐指数
1
解决办法
670
查看次数

在Typescript中,当数组包含不同的元素类型时,如何从数组类型中获取元素类型?

假设我有一个不同类型的数据数组:

const input = ["random", 2, {a: "foo", b: "baz"}];
Run Code Online (Sandbox Code Playgroud)

Typescript可以自动推断和提取类型,例如:

type InputTypeArray = typeof input;
Run Code Online (Sandbox Code Playgroud)

这里的打字稿知道InputTypeArray是(string | number | {a:string,b:string})[];

让我们将InputType称为数组元素的类型,即:

typeof InputType = string | number | {a: string, b: string};
Run Code Online (Sandbox Code Playgroud)

我可以从InputTypeArray派生InputType吗?换句话说,我将如何编写一个接受输入元素之一作为参数的函数?

const input = ["random", 2, {a: "foo", b: "baz"}];

const myFunction = (element: InputType) => element;

input.map(myFunction);
Run Code Online (Sandbox Code Playgroud)

我如何在这里写“ InputType”?有没有办法从输入中提取出来?

我知道我可以通过在map调用中内联myFunction来解决,因为打字稿会再次推断函数内的正确类型。但是有没有办法获得这种类型呢?

typescript

5
推荐指数
2
解决办法
3124
查看次数

React DND打字稿支持

我读过一些用户提到他们正在使用这个带有Typescript支持的库,但我无法在任何地方找到任何文档,也似乎无法让它自己运行.

我正在使用typescript 2,我无法创建一个非常简单的工作示例,只允许我拖动现有的组件.我尝试了几种可能性,但是在调用DragSource(作为装饰器或函数)或渲染生成的组件时,我总是遇到一些打字问题.

简而言之,我想要一个示例,它显示了typescript中react-dnd的用法,它允许我如何使现有组件可拖动,可能没有修改组件本身(它应该不知道它是可拖动的)

感谢您的任何帮助!

typescript reactjs react-dnd

4
推荐指数
1
解决办法
3761
查看次数

标签 统计

typescript ×3

react-dnd ×1

reactjs ×1

webpack ×1