如何导入 AtmosphereJS 包?

How do you import an AtmosphereJS package?

按照 instructions found here 在我的流星项目中使用大气包,当我在我的流星项目中 运行 meteor 时仍然出现错误。

例如像这样引用 vsivsi:job-collection

import { JobCollection } from 'meteor/vsivsi:job-collection'

导致错误

app.component.ts (14,31): Cannot find module 'meteor/vsivsi:job-collection'.

我做错了什么?

根据README

The package exposes a global object JobCollection on both client and server.

换句话说,包不需要导入!安装后,您可以在应用程序中使用 JobCollection。这与您发布的说明中的行相对应:

Sometimes a package will have no exports and simply have side effects when included in your app. In such cases you don’t need to import the package at all after installing.

我对这个包的了解还不够,不知道它使用全局变量是否有特定原因,或者它是否只是顽皮而没有正确使用模块。

编辑:

如评论中所述,该库似乎不包含 TypeScript 定义。您可以自己编写(如果您这样做,请将它们作为拉取请求提交给图书馆,以便我们都可以使用它们!),但作为权宜之计,如果您将其添加到应用程序的某处,它将防止错误从发生。

declare var JobCollection: any;

我喜欢在我所有的 TypeScript 项目中都有一个名为 definitions.d.ts 的文件,用于将这些小块的定义代码填充到其中。