2016-10-26 13 views
0

Я создал класс утилиты через module.exports, который использует SSPI package, чтобы получить имя пользователя NT.Почему eslint выдает ошибку в инструкции require?

Пока класс просто требует express и node-sspi пакетов. Затем функция аутентификации вызывает запрос на получение имени пользователя NT.

Но когда я построить решение этого утилита класс бросает eslint error на линии , где мои первые требуют назначений определяются:

var express = require('express'); 

Вопрос:

Почему eslint выдаст ошибку на требуется заявление?

Фрагмент ошибки выглядит следующим образом:

Message: 
    Parsing error: Unexpected token, expected , 
Details: 
    fileName: src\js\util\requestLDAP.js 
    lineNumber: 3 

Это суть моего служебного класса:

module.exports = { 

    var express = require('express'); 
    var nodeSSPI = require('node-sspi'); 

    var nodeSSPIObj = new nodeSSPI({ 
    retrieveGroups: true 
    }), 

    authenticate: function() { 
     nodeSSPIObj.authenticate(req, res, function(err){ 
     var ntUser = req.connection.user; 
     }) 
    }, 
} 
+1

В принципе, это не относится к JavaScript. Возможно, вы захотите сохранить эти объявления переменных вне литерала объекта. –

ответ

2

Вам не нужно использовать var внутри object literal для определения свойств ,

var nodeSSPI = require('node-sspi'); 
var nodeSSPIObj = new nodeSSPI({ retrieveGroups: true }); 

module.exports = { 
    express: require('express'), 
    nodeSSPI: nodeSSPI, 
    nodeSSPIObj: nodeSSPIObj, 
    authenticate: function() { 
    nodeSSPIObj.authenticate(req, res, function(err){ 
     var ntUser = req.connection.user; 
    }) 
    } 
} 
+0

Это правильно, хотя закрывающая скоба xtra необходима после того, как я думаю, метод 'authenticate'. –

+0

Переменные, на которые вы ссылаетесь, также должны быть снаружи, поэтому к ним можно получить доступ. – Matt

Смежные вопросы