angular 6 ОШИБКА ReferenceError: «процесс не определен» сластиком поиска js - PullRequest
0 голосов
/ 01 июля 2018

Прежде всего, я читаю:

вопрос 1 относительно процесса не определен

вопрос 2 относительно процесса не определен

угловой 5 вопрос

информация о сборке браузера

И ни одна из представленных сведений не помогла. Я использую Angular 6, и я хочу отправить запрос наasticsearch, используяasticsearch js. Я установил эластичный поиск, эластичные типы и эластичный браузер так:

npm install elasticsearch
npm install @types/elasticsearch
npm install elasticsearch-browser

Я пытался установить с --save, с --save-dev и без, но безрезультатно.

Затем я создал новый проект с угловым кли:

import { Component } from '@angular/core';
import { Client } from "elasticsearch";

@Component({
  selector: 'app-root',
  template: `
<script src="/node_modules/elasticsearch/src/elasticsearch.js"></script>
  <div class="container">
  <div class="row">
      <button type="" (click)="onSendElastic()">Click Me!</button>
  </div>
</div>`,
  styleUrls: ['./app.component.css']
})
export class AppComponent {

  elClient: Client

  onSendElastic(){
    console.log('clicked on send elstic');
    this.connect()
    let res = this.elSearch()
    console.log(`res: ${res}`);

  }

  connect(){
    console.log('start connect...');

    this.elClient = new Client({
      host:"http://elasticIp:9200",
      log:"trace"
    })
    this.elClient.ping({
      requestTimeout:2000
    },(err)=>{
      if(err){
        console.log('err');
      }
      else{
        console.log('everything is ok');

      }
    })
  }

  elSearch(){
    console.log('start search...');

    return this.elClient.search({
      index:"elastic_index",
      type:"doc",
      body:{
        "query":{
          "term":{
            "field1":"true"
          }
        }
      }
    })
  }
}

Я добавил тег <script>, потому что некоторые ответы, которые я нашел, предлагали это, но это не помогло.

Формат взят из: https://www.npmjs.com/package/elasticsearch. Когда я запускаю проект, запустив ng start или npm start, Когда я нажимаю кнопку, я получаю:

нажал на отправку elstic; начать соединение ... ОШИБКА ReferenceError: "процесс не определено" addOutput http://localhost:4200/vendor.js:100911:7Loghttp://localhost:4200/vendor.js:100749:5Transporthttp://localhost:4200/vendor.js:101610:27EsApiClienthttp://localhost:4200/vendor.js:99098:22Clienthttp://localhost:4200/vendor.js:99141:10connecthttp://localhost:4200/main.js:104:25onSendElastichttp://localhost:4200/main.js:98:9View_AppComponent_0ng:///AppModule/AppComponent.ngfactory.js:14:23handleEventhttp://localhost:4200/vendor.js:39410:16callWithDebugContexthttp://localhost:4200/vendor.js:40503:22debugHandleEventhttp://localhost:4200/vendor.js:40206:12dispatchEventhttp://localhost:4200/vendor.js:36869:16renderEventHandlerClosurehttp://localhost:4200/vendor.js:37313:38decoratePreventDefaulthttp://localhost:4200/vendor.js:47314:36invokeTaskhttp://localhost:4200/polyfills.js:2743:17onInvokeTaskhttp://localhost:4200/vendor.js:33108:24invokeTaskhttp://localhost:4200/polyfills.js:2742:17runTaskhttp://localhost:4200/polyfills.js:2510:28invokeTaskhttp://localhost:4200/polyfills.js:2818:24invokeTaskhttp://localhost:4200/polyfills.js:3862:9globalZoneAwareCallbackhttp://localhost:4200/polyfills.js:3888:17

Я нашел ссылку на использование браузераtoosearch, но его установка, похоже, ничего не дает. Информация в браузере отображает ссылки angularjs, а не angularjs 2, поэтому я застрял.

Почему происходит эта ошибка? Как это решить?

Ответы [ 2 ]

0 голосов
/ 14 августа 2018

Мы обнаружили, что последнее решение в этой теме работает для нас:

В частности:

 npm i -S process, then add this to polyfill.ts:
 import * as process from 'process';
 window['process'] = process;
0 голосов
/ 31 июля 2018

Обновление клиента поиска Elastic до 15.1.1 решило проблему подобного рода

"elasticsearch": "^15.1.1",

Пожалуйста, попробуйте это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...