我有一系列产品对象。但我只想获取数组中的一个对象来对其执行某些操作,方法是检查该对象的属性值是否为 true
。
我不确定我的做法是否正确。我怎样才能用 Ember 的方式做到这一点。
请有人帮助我。谢谢!
型号:
// model
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
description: DS.attr('string'),
sku: DS.attr('number'),
price: DS.attr('number'),
createdAt: DS.attr('date')
});
Controller :
// controller
import Ember from 'ember';
export default Ember.Controller.extend({
store: Ember.inject.service(),
products: Ember.computed('store', function () {
return this.get('store').findAll('product').then(product => product);
}),
actions: {
selectProduct(value) {
// I'm not sure if this is the correct way of grab an object
this.get('products').filter((product) => {
if (product.get('name') === value) {
let newProduct = Ember.Object.create({
name: product.get('name'),
description: product.get('description'),
price: product.get('price')
});
return newProduct;
} else {
console.log('Please select something!!');
}
});
}
}
});
模板:
// template
<div class="product-list">
<select id="prod-list" onchange={{action "selectProduct" value="target.value"}}>
{{#each products as |product|}}
<option value="{{product.name}}">{{product.name}}</option>
{{/each}}
</select>
</div>
最佳答案
关于javascript - 在Ember中,如何通过检查一个键/值从数组中获取对象的所有属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42113386/