Function
mapBy (dependentKey, propertyKey) ComputedProperty public
| Module: | @ember/object |
|---|
Defined in packages/@ember/object/lib/computed/reduce_computed_macros.js:429
import { mapBy } from '@ember/object/computed'; - dependentKey
- String
- propertyKey
- String
- returns
- ComputedProperty
- an array mapped to the specified key
Returns an array mapped to the specified key.
Example:
import { set } from '@ember/object';
import { mapBy } from '@ember/object/computed';
class Person {
children = [];
@mapBy('children', 'age') childAges;
}
let lordByron = new Person();
lordByron.childAges; // []
set(lordByron, 'children', [
{
name: 'Augusta Ada Byron',
age: 7
}
]);
lordByron.childAges; // [7]
set(lordByron, 'children', [
...lordByron.children,
{
name: 'Allegra Byron',
age: 5
}, {
name: 'Elizabeth Medora Leigh',
age: 8
}
]);
lordByron.childAges; // [7, 5, 8] Classic Class Example:
import EmberObject, { set } from '@ember/object';
import { mapBy } from '@ember/object/computed';
let Person = EmberObject.extend({
childAges: mapBy('children', 'age')
});
let lordByron = Person.create({ children: [] });
lordByron.childAges; // []
set(lordByron, 'children', [
{
name: 'Augusta Ada Byron',
age: 7
}
]);
lordByron.childAges; // [7]
set(lordByron, 'children', [
...lordByron.children,
{
name: 'Allegra Byron',
age: 5
}, {
name: 'Elizabeth Medora Leigh',
age: 8
}
]);
lordByron.childAges; // [7, 5, 8]
© 2020 Yehuda Katz, Tom Dale and Ember.js contributors
Licensed under the MIT License.
https://api.emberjs.com/ember/3.25/functions/@ember%2Fobject%2Fcomputed/mapBy