EmberJS - 对象模型动态更新
计算属性检测对属性所做的更改,并在使用 set() 方法调用时动态更新计算属性。
语法
ClassName.set('VariableName', 'UpdatedValue');
示例
以下示例显示了对属性进行更改时动态更新的值 −
import Ember from 'ember';
export default function() {
var Person = Ember.Object.extend ({
firstName: null,
lastName: null,
age: null,
mobno: null,
//定义 Details1 和 Details2 计算属性函数
Details1: Ember.computed('firstName', 'lastName', function() {
return this.get('firstName') + ' ' + this.get('lastName');
}),
Details2: Ember.computed('age', 'mobno', function() {
return 'Name: ' + this.get('Details1') + '<br>' + ' Age: ' + this.get('age') +
'<br>' + ' Mob No: ' + this.get('mobno');
}),
});
//初始化人员详细信息
var person_details = Person.create ({
//动态更新属性
firstName: 'Jhon',
lastName: 'Smith',
age: 26,
mobno: '1234512345'
});
//使用 set() 方法更新 'firstName' 的值
person_details.set('firstName', 'Steve');
document.write("<h2>Details of the Person: <br></h2>");
document.write(person_details.get('Details2'));
}
现在打开 app.js 文件并在文件顶部添加以下行 −
import dynamicupdating from './dynamicupdating';
其中,dynamicupdating 是指定为"dynamicupdating.js"并在"app"文件夹下创建的文件的名称。
接下来在导出之前,在底部调用继承的"dynamicupdating"。它执行在 dynamicupdating.js 文件中创建的 dynamicupdating 函数 −
dynamicupdating();
输出
运行 ember 服务器,您将收到以下输出 −

emberjs_object_model.html