如何在不使用require的情况下使elasticsearch.js工作?

时间:2016-10-07 16:44:08

标签: javascript elasticsearch elasticsearch-2.0

我正在尝试在我的项目中实施elasticsearch.js,当我添加:

 var elasticsearch = require('elasticsearch');

它打破了我的项目,并说没有定义需求。我做了研究,发现我必须在我的项目中使用一个名为require.js的库,但这只是为一个脚本改变了我的整个项目结构。

我想知道是否有人知道如何在不使用require的情况下调用实例:

 var elasticsearch = require('elasticsearch');
 var client = new elasticsearch.Client();

2 个答案:

答案 0 :(得分:2)

您似乎遵循在节点项目中使用elasticsearch或使用支持CJS模块的捆绑系统(如browserify或webpack)的说明。如果您想要一个仅适用于浏览器的项目的脚本,请参阅Browser Builds页面。

请注意,此时他们有这样的说明:

  

这些版本的客户端目前正在试用。

答案 1 :(得分:0)

您正在使用应在节点项目中使用的版本或通过模块加载器/捆绑器使用的版本。 require关键字是特定于节点的,浏览器不知道如何处理它。 Require.js会有所帮助,您也可以安装Rollup或Webpack,它们会将CJS(require)依赖项和您的代码捆绑到一个文件中。

或者很简单,就像雅各布所说的那样去https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/browser-builds.html