当前位置: 首页 > 文档资料 > EmberJS 入门教程 >

Observers

优质
小牛编辑
126浏览
2023-12-01

观察者观察诸如计算属性之类的属性并更新计算属性的文本。 它在文本更新或更改时触发。

语法 (Syntax)

funName1: Ember.computed(function() {
   //code here
}),
funName1: Ember.observer(function() {
   //code here
});
var varname = ClassName.create({
   //code here
});

下表列出了观察者的属性 -

S.No.财产和描述
1Observers and Asynchrony

Ember.js中的观察者目前是同步的。

2Declaring the Observer

声明没有原型扩展且在类定义之外的观察者。

例子 (Example)

以下示例显示如何使用observer更新计算属性的文本 -

import Ember from 'ember';
export default function() {
   var Person = Ember.Object.extend ({
      Name: null,
      //Defining the Details1 and Details2 computed property function
      Details1: Ember.computed('Name', function() {
         //get the Name value
         var Name = this.get('Name');
         //return the Name value
         return Name;
      }),
      Details2: Ember.observer('Details1', function() {
         this.set('Name','Steve Waugh');
      })
   });
   //initializing the Person details
   var person = Person.create ({
      //initial value of Name varialble
      Name: 'Mark Waugh'
   });
   //updating the value for 'firstName' using set() method
   document.write('<strong>The updated name : </strong>' +person.get('Details1'));
}

现在打开app.js文件并在文件顶部添加以下行 -

import observers from './observers';

其中,观察者是指定为“observers.js”并在“app”文件夹下创建的文件的名称。 现在,在导出之前调用底部的继承“观察者”。 它执行在observers.js文件中创建的观察者函数 -

observers();

输出 (Output)

运行ember服务器,您将收到以下输出 -

Ember.js观察员