【问题标题】:npm package using @types/meteor cannot find module meteor/meteor使用@types/meteor 的npm 包找不到模块meteor/meteor
【发布时间】:2018-05-26 10:37:56
【问题描述】:

我发布了一个依赖于@types/meteor 的npm 包(meteor-model)。 该项目本身运行良好,并且

import Meteor from 'meteor/meteor'

正确解析为

node_modules/@types/meteor

但是,当我在另一个项目中安装这个包时它不起作用:

Cannot find module 'meteor/meteor'

扔进

node_modules\meteor-model\dist\MeteorModelDecorators.js:38:16

repo 在这里:https://github.com/navio-xyz/meteor-model

【问题讨论】:

  • 愚蠢的问题但是......在第二个项目中初始化了流星?

标签: typescript meteor npm


【解决方案1】:

您仍然需要安装 meteor 软件包。如果没有这种依赖关系,您的库就不能从那里import

npm install meteor --save

@types/* 只是定义,所以 TypeScript 知道如何进行类型检查。你仍然需要实现。

【讨论】:

  • 这是一个流星项目。没有 npm meteor 包。 www.meteor.com
【解决方案2】:

现在您可以使用以下命令安装流星类型:

meteor npm install @types/meteor --save

【讨论】:

  • 修复了我的问题。为什么这不在文档中?
【解决方案3】:

你根本不能使用'meteor/*'包来导入任何模块,因为没有meteor包系统。如果您想使用 Meteor 或 Mongo 等,您可以直接将其用作全局变量。 要启用此类全局变量的类型检查,请执行以下操作:

  1. 使用
  2. 安装 @types/meteor 包
npm install --save-dev @types/meteor
  1. 在 tsconfig.json 文件中的 compilerOptions 中添加类型,如下所示:
{
  "compilerOptions": {
     ...
     "types": [
       "meteor"
     ]
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-05
    • 2019-10-21
    • 2017-03-12
    • 2017-01-12
    • 2017-10-13
    • 2013-03-13
    • 2013-12-09
    • 2016-12-04
    相关资源
    最近更新 更多