我正在尝试在我的项目中实施elasticsearch.js,当我添加:
var elasticsearch = require('elasticsearch');
它打破了我的项目,并说没有定义需求。我做了研究,发现我必须在我的项目中使用一个名为require.js的库,但这只是为一个脚本改变了我的整个项目结构。
我想知道是否有人知道如何在不使用require的情况下调用实例:
var elasticsearch = require('elasticsearch');
var client = new elasticsearch.Client();
答案 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