将ElasticSearch导入Aurelia

时间:2016-01-14 17:33:31

标签: elasticsearch npm aurelia jspm

我正在尝试在elasticsearch-js应用中使用Aurelia,但遇到了一些麻烦。

执行npm install elasticsearch后,elasticsearch安装在:app/node_modules/elasticsearch

在我的app.js中,我尝试使用import {elasticsearch} from 'elasticsearch';将其拉入,在javascript控制台中,我收到以下错误:

system.src.js:4840 GET http://localhost:9000/dist/elasticsearch.js 404 (Not Found)D @ system.src.js:4840(anonymous function) @ system.src.js:4840Promise @ shim.min.js:1847(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840(anonymous function) @ system.src.js:4840h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958
aurelia-logging-console.js:62 ERROR [app-router] Error: XHR error (404 Not Found) loading http://localhost:9000/dist/elasticsearch.js(…)error @ aurelia-logging-console.js:62log @ aurelia-logging.js:36error @ aurelia-logging.js:69processResult @ aurelia-router.js:1629(anonymous function) @ aurelia-router.js:1582h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958
aurelia-logging-console.js:62 ERROR [app-router] Router navigation failed, and no previous location could be restored.error @ aurelia-logging-console.js:62log @ aurelia-logging.js:36error @ aurelia-logging.js:69restorePreviousLocation @ aurelia-router.js:1671processResult @ aurelia-router.js:1632(anonymous function) @ aurelia-router.js:1582h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958

然后我将其删除并安装jspm install npm:elasticsearch。这会在app\jspm_packages\npm\elasticsearch@10.1.2下安装elasticsearch。

但是,当我尝试在我的应用程序中使用它时,我在js控制台中收到此错误:

index.js:5 Uncaught Node tls module not supported in browsers.(anonymous function) @ index.js:5(anonymous function) @ index.js:6$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ nodelibs-tls@0.1.0.js:1(anonymous function) @ nodelibs-tls@0.1.0.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:7(anonymous function) @ index.js:113$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ forever-agent@0.6.1.js:1(anonymous function) @ forever-agent@0.6.1.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ _keep_alive_agent.js:2(anonymous function) @ _keep_alive_agent.js:46$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ http.js:10(anonymous function) @ http.js:144(anonymous function) @ http.js:146$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:3(anonymous function) @ index.js:7$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ connection_pool.js:30(anonymous function) @ connection_pool.js:227(anonymous function) @ connection_pool.js:229$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ transport.js:65(anonymous function) @ transport.js:306(anonymous function) @ transport.js:308$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ client.js:3(anonymous function) @ client.js:63$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch.js:5(anonymous function) @ elasticsearch.js:11$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch@10.1.2.js:1(anonymous function) @ elasticsearch@10.1.2.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840r @ system.src.js:4840execute @ system.src.js:4840y @ system.src.js:4840x @ system.src.js:4840p @ system.src.js:4840h @ system.src.js:4840(anonymous function) @ system.src.js:4840h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958
system.src.js:4840 Uncaught Uncaught Node tls module not supported in browsers.
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0/index.js$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ nodelibs-tls@0.1.0.js:1(anonymous function) @ nodelibs-tls@0.1.0.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:7(anonymous function) @ index.js:113$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ forever-agent@0.6.1.js:1(anonymous function) @ forever-agent@0.6.1.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ _keep_alive_agent.js:2(anonymous function) @ _keep_alive_agent.js:46$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ http.js:10(anonymous function) @ http.js:144(anonymous function) @ http.js:146$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:3(anonymous function) @ index.js:7$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ connection_pool.js:30(anonymous function) @ connection_pool.js:227(anonymous function) @ connection_pool.js:229$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ transport.js:65(anonymous function) @ transport.js:306(anonymous function) @ transport.js:308$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ client.js:3(anonymous function) @ client.js:63$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch.js:5(anonymous function) @ elasticsearch.js:11$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch@10.1.2.js:1(anonymous function) @ elasticsearch@10.1.2.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840r @ system.src.js:4840execute @ system.src.js:4840y @ system.src.js:4840x @ system.src.js:4840p @ system.src.js:4840h @ system.src.js:4840(anonymous function) @ system.src.js:4840h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958
system.src.js:4840 Uncaught Uncaught Uncaught Node tls module not supported in browsers.
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0/index.js
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0.js$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:7(anonymous function) @ index.js:113$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ forever-agent@0.6.1.js:1(anonymous function) @ forever-agent@0.6.1.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ _keep_alive_agent.js:2(anonymous function) @ _keep_alive_agent.js:46$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ http.js:10(anonymous function) @ http.js:144(anonymous function) @ http.js:146$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:3(anonymous function) @ index.js:7$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ connection_pool.js:30(anonymous function) @ connection_pool.js:227(anonymous function) @ connection_pool.js:229$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ transport.js:65(anonymous function) @ transport.js:306(anonymous function) @ transport.js:308$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ client.js:3(anonymous function) @ client.js:63$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch.js:5(anonymous function) @ elasticsearch.js:11$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch@10.1.2.js:1(anonymous function) @ elasticsearch@10.1.2.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840r @ system.src.js:4840execute @ system.src.js:4840y @ system.src.js:4840x @ system.src.js:4840p @ system.src.js:4840h @ system.src.js:4840(anonymous function) @ system.src.js:4840h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958
system.src.js:4840 Uncaught Uncaught Uncaught Uncaught Node tls module not supported in browsers.
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0/index.js
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0.js
    Evaluating http://localhost:9000/jspm_packages/npm/forever-agent@0.6.1/index.js$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ forever-agent@0.6.1.js:1(anonymous function) @ forever-agent@0.6.1.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ _keep_alive_agent.js:2(anonymous function) @ _keep_alive_agent.js:46$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ http.js:10(anonymous function) @ http.js:144(anonymous function) @ http.js:146$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ index.js:3(anonymous function) @ index.js:7$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ connection_pool.js:30(anonymous function) @ connection_pool.js:227(anonymous function) @ connection_pool.js:229$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ transport.js:65(anonymous function) @ transport.js:306(anonymous function) @ transport.js:308$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ client.js:3(anonymous function) @ client.js:63$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch.js:5(anonymous function) @ elasticsearch.js:11$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840s @ system.src.js:4840(anonymous function) @ system.src.js:4840a @ system.src.js:4840(anonymous function) @ elasticsearch@10.1.2.js:1(anonymous function) @ elasticsearch@10.1.2.js:2$ @ system.src.js:4840d.execute @ system.src.js:4840i @ system.src.js:4840r @ system.src.js:4840execute @ system.src.js:4840y @ system.src.js:4840x @ system.src.js:4840p @ system.src.js:4840h @ system.src.js:4840(anonymous function) @ system.src.js:4840h @ shim.min.js:1773(anonymous function) @ shim.min.js:1778e @ shim.min.js:1958
system.src.js:4840 Uncaught Uncaught Uncaught Uncaught Uncaught Node tls module not supported in browsers.
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0/index.js
    Evaluating http://localhost:9000/jspm_packages/github/jspm/nodelibs-tls@0.1.0.js
    Evaluating http://localhost:9000/jspm_packages/npm/forever-agent@0.6.1/index.js
    Evaluating http://localhost:9000/jspm_packages/npm/forever-agent@0.6.1.js
    ...

有人知道我做错了还是图书馆与Aurelia不相容?

2 个答案:

答案 0 :(得分:1)

Here是在浏览器中使用elasticsearch.js的特殊说明。他们说:

  • 浏览器的版本目前正在试用。
  • 他们建议用凉亭安装它:

    bower install elasticsearch

希望它有所帮助...

答案 1 :(得分:1)

尝试从github

安装它
jspm install elasticsearch-js=github:elastic/elasticsearch-js

然后你可以使用jquery模块,如:

import 'bootstrap'; // installed by default in aurelia-skeleton
import 'elasticsearch-js/src/elasticsearch.jquery';
let client = new $.es.Client({
   hosts: 'localhost:9200';
});

或像这里建立自己的客户端 https://github.com/elastic/elasticsearch-js/blob/master/src/elasticsearch.jquery.js

import es from 'elasticsearch-js';
//import es from 'elasticsearch-js/src/elasticsearch';

let config = {}

// Notice that you need to provide config.defer function if you build it yourself
// http://bluebirdjs.com/docs/api/deferred-migration.html

function defer() {
  var resolve, reject;
  var promise = new Promise(function() {
    resolve = arguments[0];
    reject = arguments[1];
  });
  return {
    resolve: resolve,
    reject: reject,
    promise: promise
  };
}

config.defer = defer;
config.hosts = 'localhost:9200';

let client = new es.Client(config)