EmberJS 对象模型setter和getter
描述
Setter和Getter用于管理在computed属性中声明的变量的值。Ember.js set()方法计算程序中指定的特定条件的值。 Ember.js get()方法从setter中获取值并显示。
语句
App.Person = Ember.Object.extend({
fullName: function(key, value, previousValue)
{
//setter and getter
}.property('firstName', 'lastName')
});
例子
<!DOCTYPE html>
<html>
<head>
<title>Emberjs Setter and Getter</title>
<!-- CDN's -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/3.0.1/handlebars.min.js"></script>
<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/ember.js/1.10.0/ember.min.js"></script>
<script src="https://builds.emberjs.com/tags/v1.10.0-beta.3/ember-template-compiler.js"></script>
<script src="https://builds.emberjs.com/release/ember.debug.js"></script>
<script src="https://builds.emberjs.com/beta/ember-data.js"></script>
</head>
<body>
<script type="text/javascript">
App = Ember.Application.create();
App.Person = Ember.Object.extend({
firstName: null,
lastName: null,
//Defining the fullName computed property function
fullName: function(key, value, previousValue){
//lenngth of argument must be > 5
if (arguments.length > 5)
{
//spliting the details and storing it into the nameParts array
var nameParts = value.split(/\s+/);
this.set('firstName', nameParts[0]);
this.set('lastName', nameParts[1]);
}
return this.get('firstName') + ' ' + this.get('lastName');
}.property('firstName', 'lastName')
});
var emp = App.Person.create({firstName:'Jhon', lastName:'DK'});//initializing the values for variable
document.write("Details of the employee: <br>"+"Name: "+emp.get('firstName')+" LastName: "+emp.get('lastName'));//displaying the values by get() method
</script>
</body>
</html>
输出
让我们执行以下步骤,看看上面的代码如何工作:
将上面的代码保存在obj_set_get_cmp.html文件中
在浏览器中打开此HTML文件。