Сопоставить значения в объекте с заданным значением в реаги - PullRequest
0 голосов
/ 27 марта 2020

Я новичок в реакции, здесь у меня есть один массив объектов, который похож на

 const bgStatus =
   [{
     Id: "809"
     Name: "PRE"
    Description: "PRE"
    Value: "VP:PRE"
    },
    {
     Id: "809"
     Name: "CLO"
    Description: "CLO"
    Value: "VP:CLO"
    },
    {
     Id: "809"
     Name: "BU"
    Description: "BU"
    Value: "VP:BU"
    }
    ]

Теперь, в этом у меня есть один метод, с помощью которого я получаю значение, которое VP:PRE or VP:BU or VP:CLO

Теперь у меня есть следующая функция

getmsg = (bgSt, tobeChange, current) => { 

return `Are you sure you want to change to ${tobeChange}? not possible to go ${current} `

}

Теперь, в этом и статус tobeChange и current входят в VP:PRE в этом формате. Теперь я хочу использовать Description из этого массива для этого значения, как для VP:PRE, в возвращаемом значении должно быть 'PRE'. Теперь,

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

Итак, а также не хочу использовать объекты include илиентов.

Результат, который я хочу - когда я вызываю функцию

getmsg this time in params I am passing , tobeChange is `"VP:PRE"`, current is "VP_BU" and bgStatus is the array of object.

Сейчас в return, я должен получить это сообщение,

`Are you sure you want to change to PRE not possible to go BU `

Значения VP_PRE должны быть заменены описанием PRE

1 Ответ

0 голосов
/ 27 марта 2020

Хорошо, если вы всегда получаете две переменные:

  • tobeChange = VP: что-то_to_change
  • current = VP: что-то

Ничего не имеет чтобы реагировать на это javascript traitement Я предлагаю вам использовать функцию split , вот пример:

getmsg = (tobeChange, current) => { 
toChange=tobeChange.split(":")
tobeChange=toChange[1]

curr=current.split(":")
current=curr[1]

return `Are you sure you want to change to ${tobeChange}? not possible to go ${current} `

}

tobeChange="VP:something_to_change"
current="VP:something_current"

console.log(getmsg(tobeChange, current))
...