📜  如何在 Ember.js 中创建实例?

📅  最后修改于: 2022-05-13 01:56:16.630000             🧑  作者: Mango

如何在 Ember.js 中创建实例?

Ember.js是一个开源的JavaScript 框架,用于构建现代 Web 应用程序。它允许开发人员创建一个单页 Web 应用程序,可以减少创建如此多页面来执行相同任务的工作量。它基于用于开发大型客户端 Web 应用程序的模型-视图-控制器(MVC) 。大多数开发人员找到了最简单的方法来轻松快速地完成任务,因此 Ember.js 通过减少工作量并提供高级设施来构建单页 Web 应用程序来帮助大多数开发人员节省时间。

在 ember.js 中创建实例的步骤:

  • 我们可以使用create()方法在 Ember.js 中创建实例。我们可以通过调用它的 create() 方法来创建类的新实例。为此,我们必须先定义一个类。
  • 使用sayHi()方法定义一个P1 类
Javascript
App.P1 = Ember.Object.extend({
  sayHi: function(x) {
    alert(x);
  }
});


Javascript
App.P1View = Ember.View.extend({
  tag: 'hi',
  cNameBindings: ['isAdmin']
});


Javascript
App.P1 = Ember.Object.extend({
  sayHi: function(x) {
    var name = this.get('name');
    alert(name + " says: " + x);
  }
});
  
App.S1 = App.P1.extend({
  sayHi: function(x) {
    this._super(x+ ", Done!");
  }
});
  
var fun1 = App.S1.create({
  y: "Harry Don"
});
  
fun1.sayHi("Ok");


Javascript
var p = App.P1.create();
p.sayHi("Hi");


Javascript
App.P1 = Ember.Object.extend({
  hellofun: function() {
    alert("Hello world!! " + this.get('inp_name'));
  }
});
  
var harry = App.P1.create({
  inp_name: "Monty"
});
  
harry.hellofun();


  • 我们可以使用 Ember.js 中的 extend 方法从现有类创建一个子类。

Javascript

App.P1View = Ember.View.extend({
  tag: 'hi',
  cNameBindings: ['isAdmin']
});
  • 当我们定义子类时,我们可以使用 _super() 方法覆盖父方法。

Javascript

App.P1 = Ember.Object.extend({
  sayHi: function(x) {
    var name = this.get('name');
    alert(name + " says: " + x);
  }
});
  
App.S1 = App.P1.extend({
  sayHi: function(x) {
    this._super(x+ ", Done!");
  }
});
  
var fun1 = App.S1.create({
  y: "Harry Don"
});
  
fun1.sayHi("Ok");

输出:

alerts "Harry Don says: Ok, Done!"
  • 现在使用 create() 方法创建一个实例

Javascript

var p = App.P1.create();
p.sayHi("Hi");

输出:

alerts " says: Hi"
  • 当我们创建一个实例时,我们可以初始化它的属性值,如下所示:

Javascript

App.P1 = Ember.Object.extend({
  hellofun: function() {
    alert("Hello world!! " + this.get('inp_name'));
  }
});
  
var harry = App.P1.create({
  inp_name: "Monty"
});
  
harry.hellofun();

输出:

alerts "Hello world!! Monty"
  • 我们应该注意,我们不能使用create方法重新定义实例的值,也不能定义新值。我们只能使用 create() 方法设置一些属性。

限制:

  • 我们不能重新定义实例计算方法。
  • 我们不能定义新的价值观。
  • 如果我们想重新定义方法,那么我们必须创建一个新的子类并启动该子类。
  • 使用这种方法,我们只能设置几个简单的属性。