typing 相关问题

有关数据类型的问题。不要将此标签用于与在键盘上打字的物理行为相关的问题,因为这些问题几乎总是偏离主题。

在适用于 Windows 10 的 Unity 3D 中启用触摸键盘滑动和预测文本功能

我目前正在开发适用于 Windows 10 的独立 Unity 3D 应用程序,并且在输入字段方面遇到了挑战。具体来说,当用户使用 Wind 与这些字段交互时...

回答 1 投票 0

在`TypeVar`上使用`Unpack`来动态生成函数签名

我正在尝试动态生成 _AbstractGameObject 子类的函数签名。我已经成功地尝试了在子类中解压具体的 TypedDicts,但是

回答 1 投票 0

如何针对错误的泛型类型强制执行 Pydantic 错误引发

下面你可以看到我的代码 从 pydantic 导入 BaseModel 从输入导入 TypeVar,通用 T = 类型变量('T') 类 GenericItem(BaseModel, Generic[T]): 项目:T # 使用 GenericItem 的示例

回答 1 投票 0

使用相同类型变量的类之间有关系吗?

typing.TypeVar 类允许指定可重用的类型变量。使用 Python 3.12 / PEP 695,可以像这样定义具有类型变量 T 的类 A/B: A[T]类: ... B[T] 类: ....

回答 1 投票 0

有没有办法“提取”TypeScript接口属性的类型?

假设库 X 有一个打字文件,其中包含一些接口。 接口 I1 { x:任意; } 接口 I2 { y:{ 一个:I1, b:I1, c:I1 } 兹:...

回答 6 投票 0

Python 3 类型,具有任意数量包含类型的自定义可变参数泛型类型,如何实现?

typing.Tuple 类可以与任意数量的类型参数一起使用,例如 Tuple[int, str, MyClass] 或 Tuple[str, float]。我如何实现我自己的可以像这样使用的类?我明白...

回答 2 投票 0

如何根据是否给出参数(如 next() 函数的情况)来键入注释不同的返回类型?

next() 函数有一个特殊的属性,next(iterable) 返回元素或引发异常,但 next(iterable, None) 返回元素或 None。 如何输入注释呢?考虑

回答 1 投票 0

Typescript `in` 运算符类型保护仅作为文字缩小

使用 in 运算符进行类型缩小是否仅适用于文字,还是我遗漏了某些内容? 请帮助我理解为什么会发生这种情况。 接口A { a:字符串; } 接口B{ b:麻木了……

回答 2 投票 0

如何根据方法输入推断Python类泛型?

我想用Python编写一个管道,如下所示: 从 collections.abc 导入 Callable 从输入导入 Generic、TypeVar T = 类型变量(“T”) U = 类型变量(“U”) V = TypeVar("V&q...

回答 1 投票 0

HTMLInputElement 和 HTMLTextAreaElement 的 React&TS_Union 类型

我已经为 HTMLInputElement 和 HTMLTextAreaElement 提供了一个处理程序,现在我已经扩展了处理程序的类型,如下所述:键入 'HTMLInputElement | HTMLTextAreaElement' 不可分配给 ty...

回答 1 投票 0

指定对象实现协议并继承自类

假设我有一个协议 从 abc 导入抽象方法 从输入导入协议 类Supports_connect(协议): 地址:int @抽象方法 def connect(self) -> 无: ...

回答 1 投票 0

抽象基类的Python子类显示类型错误

pylance 在定义变量类型时给出类型错误。下面是一个小示例,显示了代码的结构并给出了错误: from __future__ 导入注释 Fr...

回答 1 投票 0

使用泛型时,为什么我会在 VSCode 中收到 Pylance 错误““A*”类型的对象不可调用”?

我正在尝试在Python 3.11中编写一个泛型类,它应该能够使用不同的处理类(本例中的A或B)处理元素列表。我的目标是使用类型变量...

回答 1 投票 0

将 Prisma 交易传递到打字稿中的函数中

您好,我有以下问题。我有 prisma 交易,但我想将 prisma 交易客户端传递到如下函数中: ... prisma.$transaction(异步 (tx) => { 一些函数(...

回答 1 投票 0

Python 类型:与包装类型具有相同接口的通用类型

我想定义一种“包装器”通用类型,例如 MyType[T],以便它具有与包装类型相同的类型接口。 从输入导入 Generic、TypeVar T = TypeVar("...

回答 1 投票 0

TypeScript:类型定义的引用子类型(接口)

我在 TypScript 中使用以下类型: 接口练习数据{ 身份证号; 名称:字符串; 词汇 : { 来自:字符串; 到:字符串; }[]; } 现在我想

回答 4 投票 0

仅允许特定组件作为 React 和 Typescript 中的子组件

我只想允许特定组件作为子组件。例如,假设我有一个 Menu 组件,它应该只包含 MenuItem 作为子组件,如下所示: 我只想允许特定组件作为子组件。例如,假设我有一个菜单组件,它应该只包含 MenuItem 作为子组件,如下所示: <Menu> <MenuItem /> <MenuItem /> </Menu> 因此,当我尝试将另一个组件作为子组件时,我希望 Typescript 在 IDE 中抛出错误。有人警告我,我只能在孩子时期使用 MenuItem。例如在这种情况下: <Menu> <div>My item</div> <div>My item</div> </Menu> 此线程几乎相似,但不包含 TypeScript 解决方案。我想知道是否可以使用 TypeScript 类型和接口来解决这个问题。在我想象的世界中,它看起来像这样,但是类型检查当然不起作用,因为子组件具有 Element 类型: type MenuItemType = typeof MenuItem; interface IMenu { children: MenuItemType[]; } const MenuItem: React.FunctionComponent<IMenuItem> = ({ props }) => { return (...) } const Menu: React.FunctionComponent<IMenu> = ({ props }) => { return ( <nav> {props.children} </nav> ) } const App: React.FunctionComponent<IApp> = ({ props }) => { return ( <Menu> <MenuItem /> <MenuItem /> </Menu> ) } 有没有办法用 Typescript 来实现这一点?喜欢用仅与特定组件相关的东西来扩展 Element 类型吗? 或者确定子组件是特定组件的实例的好方法是什么?无需添加查看子组件 displayName 的条件。 为此,您需要从子组件(最好也是父组件)中提取 props 接口,并以这种方式使用它: interface ParentProps { children: ReactElement<ChildrenProps> | Array<ReactElement<ChildrenProps>>; } 所以在你的情况下它看起来像这样: interface IMenu { children: ReactElement<IMenuItem> | Array<ReactElement<IMenuItem>>; } const MenuItem: React.FunctionComponent<IMenuItem> = ({ props }) => { return (...) } const Menu: React.FunctionComponent<IMenu> = ({ props }) => { return ( <nav> {props.children} </nav> ) } 尽管有上述答案,但你不能对孩子这样做。您可以在组件的开发版本中执行运行时检查,但无法使用 TypeScript 类型执行此操作 — 至少目前还不能。 来自 TypeScript 问题 #18357: 现在除了在 ElementChildrenAttribute 命名空间内指定 JSX 之外,无法指定子代表示是什么。它与子项的 React 表示紧密结合,这意味着子项是 props 的一部分。这使得无法对具有单独存储子项的实现的子项启用类型检查,例如 https://github.com/dfilatov/vidom/wiki/Component-properties。 并请注意,它在 #21699 中被引用,基本上,围绕 ReactElement 的可能破坏性更改也可能使执行此操作成为可能。 现在,您所能做的就是运行时检查,或接受 props (或 props 数组)和可选的组件函数(在您的情况下,您知道它是 MenuItem)并在组件中创建元素。 还有一个问题是你是否应该这样做。为什么我不能编写一个返回 MenuItem 的组件,而不是直接使用 MenuItem? :-) 我一直在研究和记录,我可能刚刚找到了解决方案。 const childrenWithProps = React.Children.map(props.children, (child) => { console.log(child.type) if (React.isValidElement(child) && ((child.type as any)._payload.value.name === NavLinks.name)) { return cloneElement(child, { ref: menuRef }); } throw new Error(`Navbar solo puede recibir ${NavLinks.name} o NavbarIcons como children.`); }); 在 vscode 中,属性 _payload 无法从 child.type 访问,因此我将其设置为 any,这样 IDE 就不会抛出错误。

回答 3 投票 0

Python 类型:使用另一个协议作为参数的方法实现协议的具体类

我正在尝试正确输入以下示例: from __future__ 导入注释 从数据类导入数据类 从typing_extensions导入协议 @dataclass(冻结=真)

回答 1 投票 0

Kotlin 表示整数的类型的通用基类型?

Kotlin 是否提供了一种描述“整数”(例如 Int、Long 或 BigInteger)但不提供 Double 的方法? 在 Kotlin 中,就像在 Java 中一样,Number 作为所有数字类型的超类型,包括 flo...

回答 1 投票 0

Python 3.10 方法中使用装饰器的类型提示

我正在尝试使用typing.Concatenate 和typing.ParamSpec 来键入提示类的方法要使用的装饰器。装饰器仅接收标志,并且仅在类具有该标志时运行

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.