- EmberJS 教程
- EmberJS - 首页
- EmberJS - 概述
- EmberJS - 安装
- EmberJS - 核心概念
- 创建并运行应用程序
- EmberJS - 对象模型
- EmberJS - 路由
- EmberJS - 模板
- EmberJS - 组件
- EmberJS - 模型
- EmberJS - 管理依赖关系
- EmberJS - 应用程序问题
- EmberJS - 配置 Ember.js
- EmberJS - Ember 检查器
- EmberJS 有用资源
- EmberJS - 快速指南
- EmberJS - 有用资源
- EmberJS - 讨论
声明观察者的对象模型
您可以使用 Ember.observer 方法定义内联观察者,而不需要进行原型扩展。
以下是用 Ember.observer 方法定义内联观察者的语法。
App.ClassName = Ember.Object.extend ({ ComputedPropertyName: Ember.observer('ComputedPropertyNames', function() { //do the stuff }) });
在类定义外部
通过使用 addObserver() 方法将观察者添加到类定义外部的对象中。
语法可以按如下所示指定 −
ClassName.addObserver('ComputedPropertyNames', function() { //do the stuff });
示例
以下示例通过使用 Ember.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() {}) }); //initializing the Person details var person = Person.create ({ Name: 'Steve', }); person.set('Name', 'Jhon'); document.write('Name is Changed To: ' + person.get('Details1')); }
现在打开 app.js 文件,并在文件顶部添加以下行 −
import outsideclassdefinitions from './outsideclassdefinitions';
其中,outsideclassdefinitions 是指定为 "outsideclassdefinitions.js" 的文件名,并在 "app" 文件夹下创建。
接下来在导出前在底部调用继承的 "outsideclassdefinitions"。它执行在 outsideclassdefinitions.js 文件中创建的 outsideclassdefinitions 函数 −
outsideclassdefinitions();
输出
运行 ember 服务器,您将收到以下输出 −
emberjs_object_model.htm
广告