#ember.js
#ember.js
Вопрос:
Скажите «Я инициализировал массив с предопределенными значениями, подобными этому» в моем controller
data: A([
{
lat: 14.5619175,
lng: 121.0197196,
title: "Jazz Mall",
open: false
},
{
lat: 14.5660656,
lng: 121.0295681,
title: "Avalue Residences",
open: false
},
{
lat: 14.5661493,
lng: 121.0282417,
title: "Century City",
open: false
}
])
Теперь, как я могу обновить значения до чего-то вроде
title: "Jazz Mall"
Для title: "Value has been change"
Комментарии:
1. Проверьте ответ, если он работает. Спасибо
2. Привет @rinoldsimon, поскольку его emberjs работает для меня, используя set
Ответ №1:
Если я правильно понимаю вопрос, то это можно сделать, просто изменив значение первого объекта массива,
data.forEach((d) => {
if (d.title === "Jazz Mall") {
d.title = "Value has been changed"
}
})
console.log(data);
Используя метод ember set
set(this.get('data').objectAt(index), 'prop', value)
Комментарии:
1. Вы должны использовать
set()
, поскольку вопрос касается ember.js или, по крайней мере, добавьте предупреждение, которое вы должны использоватьset()
, если это свойство должно соблюдаться framework, а вы еще не используете отслеживаемые свойства.2.Использование set работает для меня
const temp_data = this.get("data");
set(temp_data[index], "open", !value);