programing

[ Dynamic access object ]필드

prostudy 2022. 6. 1. 17:36
반응형

[ Dynamic access object ]필드

Vuex를 리팩터링하고 있는데 다음과 같은 일반적인 작업이 있습니다.

 deleteFromList ({commit}, {list = '', type = '', listPlural = '', data = {}}) {
  db.rel.find(list, data).then(doc => {
    return db.rel.del(list, doc.rooms[0])
  })
}

한다면list로 설정되어 있다.room, 응답을 반환합니다.doc.rooms룸 배열을 포함하는 객체입니다.

이 경우listPluralparam은 다음과 같은 값으로 전달됩니다.rooms.

어떻게 돌아가죠?doc.rooms[0]동적으로 사용listPlural대신 param?

뭐랄까doc.listPlural[0]그냥 아이디어를 주기 위해서요.

다음과 같은 괄호 표기를 사용하여 doc 필드에 액세스할 수 있습니다.

 deleteFromList ({commit}, {list = '', type = '', listPlural = '', data = {}}) {
  db.rel.find(list, data).then(doc => {
   if(listPlural){// check if the listPlural is not empty
      return db.rel.del(list, doc[listPlural][0])
   }
  })
}

언급URL : https://stackoverflow.com/questions/64415568/dynamically-access-object-field

반응형