在Angular2(AngularCLI)中找不到模块弹性搜索

时间:2016-12-31 16:10:44

标签: angular elasticsearch angular-cli

我尝试在Angular2 App中使用Elasticsearch NPM Module

我使用以下命令在我的服务中导入:

import { Client, SearchResponse } from 'elasticsearch';

Typescript编译器不会抱怨,但ng serve输出:

Cannot find module 'elasticsearch'

如果我尝试使用相同的情况:

import { Client, SearchResponse } from '../../node_modules/elasticsearch/webpack_config/angular.js';

2 个答案:

答案 0 :(得分:3)

安装它的类型:

npm i @types/elasticsearch@0.0.7

另外,看看你的tsconfig.json并确保它也在那里:

旧版本的打字稿:

   "types": [    
      "elasticsearch"
    ]

新版本的打字稿(> 2)

"typeRoots": [
      "node_modules/@types"
    ]

答案 1 :(得分:1)

如果已经这样做,请卸载所有弹性搜索包...使用类似..

之类的命令
npm uninstall elasticsearch
npm uninstall -g elasticsearch
npm uninstall -g --save-dev elasticsearch
npm uninstall @types/elasticsearch

现在使用angular-cli在项目中安装弹性搜索包的类型定义

npm install @types/elasticsearch

现在安装弹性搜索包

npm install elasticsearch