Поле атрибута теряет значение при передаче в пользовательскую функцию - PullRequest
0 голосов
/ 16 апреля 2020

Контекст:

Я пытаюсь сделать математические операции внутри sequilize.literal (). Для этого мне нужно получить значения, которые находятся в соответствующей строке, и передать их пользовательской функции, которая у меня есть. Это мой код.

// custom function
function addValue(value) {
    console.log(value)
}

// ... skipped code this is the include block inside the findAll

include: [{
         attributes: ["id", "description", "latitude", "longitude",
         [sequelize.literal(

              // (Doens't work attempt 1)
              addValue('`subcategories->establishments`.latitude'),'distance']],   


              // (WORKS attempt 2)
              '`subcategories->establishments`.latitude'),'distance']],


               model: establishment, as: 'establishments',
               required: false
        }]

Как вы можете видеть в attempt 1, я передаю значение методу (также объявленному сверху) и получаю null для него.

На attempt2 я получаю значение и могу выполнять с ним простые математические операции (*, +, -), но, например, не могу вызвать класс Math.

Может кто-нибудь объяснить это поведение для меня? и почему это работает, если я вызываю его без функции и как только я заключаю его в функцию, он перестает работать?

...