JSFiddle - React, Tailwind, and code Playground
by scispear
HTML
<script src="https://github.com/downloads/emberjs/ember.js/ember-0.9.8.1.min.js"></script>
<script type="text/x-handlebars">
{{App.objTwo.param2}}
</script>
JavaScript
App = Em.Application.create();
// Models
////////////////////////////////////
App.ObjectOne = Em.Object.extend({
param1: 5.0,
param2: 10.0,
param3: function() {
return parseFloat(this.get('param1')) * parseFloat(this.get('param2'));
}.property('param1', 'param2')
});
App.ObjectTwo = Em.Object.extend({
param1: 7.0,
param2: 1.0,
param3: function(){
return parseFloat(this.get('param1')) + parseFloat(this.get('param2'));
}.property('param1', 'param2')
});
//___________________________________
// Controllers
//////////////////////////////////////
App.objectOneController = Em.Object.create({
content: App.ObjectOne.create(),
init: function() {
this._super();
}
});
App.objectTwoController = Em.ArrayController.create({
content: [],
objectOneBinding: 'App.objectOneController.content',
onAdd: function() {
debugger;
Em.run.next(this, function() {
this.objectAt(0).bind('param2', Em.Binding.from('objectOne.param3'));
});
}.observes('content.@each')
});
//_____________________________________
//Add an ObjectTwo to controller
App.objTwo = App.ObjectTwo.create();
App.objectTwoController.pushObject(App.objTwo);