Обновление кода в Vuejs

avatar
abu abu
8 апреля 2018 в 12:04
29
1
-1

У меня есть код ниже в методе vue.js.

if(element == 'name'){
   var address_data = {
   name : this.name 
  }
}

Я хотел бы заменить name на element, как показано ниже

if(element == 'name'){
   var address_data = {
   element : this.element 
  }
}

Как я могу это сделать?

Источник
Sami Kuhmonen
8 апреля 2018 в 12:30
1

Использовать обычную индексацию для объекта? this[element]

abu abu
8 апреля 2018 в 12:37
0

Спасибо @SamiKuhmonen. Ваше решение работает. Спасибо.

connexo
8 апреля 2018 в 16:01
0

Вы четко заявили, что вам нужен объект со свойством с именем element. Если element используется для описания имени свойства переменной, почему бы не включить эту информацию напрямую? Вместо этого вы отрицаете ответ, который правильно решил проблему, которую вы описали.

Ответы (1)

avatar
connexo
8 апреля 2018 в 12:11
0

EZ PZ вот так:

if (element == 'name') {
   var address_data = { element }
}

Если element является переменной, содержащей имя свойства в address_data, которое вы хотите установить, а также имя свойства в this, сделайте следующее:

if (element == 'name') {
    var address_data = {}
    address_data[element] = this[element]
}
abu abu
8 апреля 2018 в 12:16
0

Спасибо @connexo. Но это не работает. Он работает как {element: "name"}. Но мне нужно {name: " value of this.name"}. Спасибо.

connexo
8 апреля 2018 в 15:58
0

@abuabu Это не то, о чем задавал ваш вопрос.