EmberJS - 单向绑定



对象模型绑定通过使用单向 binding 方法 computed.oneWay() 指定一个方向的更改,并且在通过覆盖指定另一个属性上的行为时非常有用。

示例

下列示例通过覆盖指定另一个属性上的行为 −

import Ember from 'ember';

export default function() {
   var CarOne = Ember.Object.create ({
      
      //primary value
      TotalPrice: 860600
   });

   var Car = Ember.Object.extend ({
      TotalPrice: Ember.computed.oneWay('CarOne.TotalPrice')
   });

   var Car = Car.create ({
      CarOne: CarOne
   });
   
   //Changing the user object name, changes the value on the view
   CarOne.set('TotalPrice', 860600);

   //Car.TotalPrice will become "860600"
   Car.set('TotalPrice', 930000);  // changes to the view don't make it back to the object.
   document.write('<h3>One Way Binding<h3>');
   document.write('Value of car : ' + CarOne.get('TotalPrice')); //display value as 860600
}

现在打开 app.js 文件并在文件的开头添加以下行 −

import objectmodelonewaybinding from './objectmodelonewaybinding';

其中,objectmodelonewaybinding 是指定为 "objectmodelonewaybinding.js" 并创建于 "app" 文件夹下的文件名。

接下来在导出之前,在底部调用继承的 "objectmodelonewaybinding"。它执行在 objectmodelonewaybinding.js 文件中创建的 objectmodelonewaybinding 函数 −

objectmodelonewaybinding();

输出

运行 ember 服务器,你将收到以下输出 −

Ember.js Object Model One Way Binding
emberjs_object_model.htm
广告