Elm 的类型定义

Type definitions for Elm

TypeScript 有一种使用 DefinitelyTyped 提供库类型的机制。有没有办法在 Elm 中使用来自 npm 的 JavaScript 库并提供某种类型保证?

不,Elm 没有像 Def​​initelyTyped 这样的机制。

要从 Elm 使用 JavaScript,您有两种选择:Elm ports 和本机代码,前者是推荐的机制。

使用端口,您实际上是在使用消息传递来请求 JavaScript 中实现的某些功能。

使用本机代码,您将使用两种语言实现 Elm 和 JavaScript 之间的绑定。我想这是最接近 DefinitelyTyped 的东西。您可以查看使用本机代码的现有模块,例如 Dom,以便了解如何执行此操作。请注意,如果您使用本机代码,Elm 包服务器通常会拒绝为您的模块提供服务。