簡體   English   中英

SyntaxError:意外令牌。 嘗試獲取process.env node.js時

[英]SyntaxError: Unexpected token . when trying to get process.env node.js

所以我正在嘗試實現elasticsearch

const express = require('express');
const cookieParser = require('cookie-parser');
const bodyParser = require('body-parser');
const hbs = require('hbs');
const expressValidator = require('express-validator');
const flash = require('connect-flash');
const session = require('express-session');
const passport = require('passport');
const LocalStrategy = require('passport-local').Strategy;
const mongoose = require('mongoose');
const fs = require('fs');

const sslRedirect = require('heroku-ssl-redirect');
const elasticsearch = require('elasticsearch');

var app = express();

// elasticsearch
var connectionString = process.env.SEARCHBOX_URL;
var client = new elasticsearch.Client({
  if (process.env.NODE_ENV === 'production') {
    hosts: connectionString
  } else {
    hosts: ['http://localhost:9200']
  }
});

client.ping({
  requestTimeout: 30000,
}, function(error) {
  if (error) {
    console.error('elasticsearch cluster is down!');
  } else {
    console.log('Everything is ok');
  }
});

但是我收到以下錯誤。

if (process.env.NODE_ENV === 'production') {
           ^

SyntaxError: Unexpected token .

我看了看如何在各個地方獲得環境,並且我以相同的方式來做。 所以不確定為什么錯誤會在這里拋出。

您的語法無效。 如果需要條件使用三元運算符

const isProduction = process.env.NODE_ENV === 'production'
const client = new elasticsearch.Client({
  hosts: isProduction ? connectionString : ['http://localhost:9200']
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM