codecamp

EmberJS 对象模型

面向对象的分析和设计技术被称为对象建模。在Ember.js中,所有对象都来自Ember.Object。

类和实例

类是一个模板或蓝色打印,具有变量和函数的集合,其中作为实例与该类的对象相关。

您可以使用Ember.Object的extend()方法创建新的Ember类,如下所示:

App.NameOfClass = Ember.Object.extend({
   VariableName1:'values',
   ..
   VariableNamen:'values',
   FunctionName: function(thing)
   {
      //display logic
   }
});

NameOfClass和FunctionName是类的名称和在类中定义的函数的名称。

让我们看看如何使用基类来扩展子类,如下所示:

App.Student = Ember.Object.extend({
   disp: function() {
      var roll = this.get('rollnum');
      var name = this.get('name');
      document.write("Roll num: "+roll+" Name: "+name);
   }
});

App StudentInfo = App.Student.extend({
   rollnum:"12",
   name: "Jhon",
});

在上面的代码中,基类的名称是Student,StudentInfo是子类,它由基类扩展。disp是在基类中声明的函数的名称,显示学生信息。您可以使用_super()方法来立即引用父类方法。

下表显示如何创建Ember类的实例:

序号实例和说明
1创建和初始化实例
通过调用create()方法创建该类的实例化,并使用init()方法自动初始化该类的实例。

让我们通过点击以下链接看到一些关于对象模型的更多详细信息:

什么时候使用计算属性,观察器和绑定

  • 计算属性将函数声明为属性。您可以通过将计算属性定义为一个函数来创建一个,当您请求属性时,ember.js会自动调用。对计算的属性的多次调用将始终返回相同的值。

  • 如果两个或多个对象之间存在关系,则使用Observer模式,例如,如果一个对象被更新,其依赖对象将被自动通知。

  • 绑定有助于组合两个不同的层使同步。


EmberJS 应用
EmberJS 模板
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }