2016-11-18 83 views
3

我使用角2 angular-cli,我安裝了Elasticsearch和角2

nom install --save elasticsearch 

有一個elasticsearch目錄node_modules的elasticsearch庫。

我做

import * as elasticsearch from 'elasticsearch'; 

進口據我所知這是一個將解析爲node_modules路徑和angular-cli(與ng serve)將採取適當的捆綁照料一切的相對路徑。

不過,我得到以下錯誤:

ERROR in [default] /Users/xxx/yyy/src/app/shared/elasticsearch/es.service.ts:4:31 
Cannot find module 'elasticsearch'. 

任何幫助,將不勝感激。

我確認問題出現在用ng init生成的空項目中。

而且,做這樣的事情:

var elasticsearch = require('elasticsearch'); 

效果很好。

+0

@LauraAbadAvilés這是回答我的問題還是一個問題嗎? –

+0

這是一個問題,但我知道了。 client = new elasticsearch.Client({host:'http:// localhost:9200', // log:'trace' }); –

+0

@LauraAbadAvilés確實。我的問題和Angular2怎麼樣,你是如何導入圖書館的? –

回答

2

得到這個工作,最簡單的方法是先安裝類型定義:

npm install --save-dev @types/elasticsearch 

,然後用新的光澤類型的裝備,你可以使用import語句像這樣的:

import { Client } from 'elasticsearch'; 

...並使用它像這樣:

let x = new Client({ /* Your parameters here */});