javascript - computed property that changes its value with action in Ember.js -


i have controller has action {{loadright}} passes current model controller when click button.

when first load app, use firstelement computed property pulls first element model array.

basically want create second computed property return current model that's clicked can use information in template.

i created currentelement computed property since suck @ javascript couldn't pass current model action method computed property. keep getting model not defined error.

i appreciate help. below controller.

// controller works.js import ember "ember";  export default ember.controller.extend({   firstelement: function () {     return this.get('model.firstobject');   }.property('model.[]'),     currentelement: function () {     if(!currentmodel) {       currentmodel = this.get('model.firstobject');     }     return currentmodel;   }.property('model.[]'),     actions: {     loadright: function (currentelement) {     console.log(currentelement);     }    }}); 

you define property selectedelement (that's clicked). when loadright fired set selectedelement selection. currentelement simple computed property, depends on model.firstobject , selectedelement.

export default ember.controller.extend({   firstelement: function () {     return this.get('model.firstobject');   }.property('model.[]'),    selectedelement: null,    currentelement: function () {     return (this.get('selectedelement') || this.get(`firstelement`));   }.property('firstelement', 'selectedelement'),    actions: {     loadright: function (selection) {       this.set('selectedelement', selection);       return false; // or transition logic      }   } }); 

Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -