ExtJS5_MVVM特性的简单说明

下面我们来看一下自动生成的代码中的MVVM架构的关系。Main是一个可视的控件,MainController是这个控件的控制类,MainModel是这个控件的模型类。

在上面的图片中,左边是Main.js中的代码,右边是MainController.js 和 MainModel.js中的代码,可以看到MVVM中的事件绑定和属性值绑定都用到了。上图中红色的部分标注了一个按钮“Button”的handler(即click)事件绑定到MainController.js中的函数“OnClickButton”之上。蓝色部分表示将panel的title属性,绑定到了MainModel的属性data的name值上,如果你要修改该Panel的值,则只要修改MainModel中的data.name就可以。

下面我们来看看网页里面的具体展示:

下面做一个最简单的修改,将panel的title值改为“修改后的title”。修改MainController.js,加入一条语句

Ext.define(‘app.view.main.MainController‘, {
            extend : ‘Ext.app.ViewController‘,

            requires : [‘Ext.MessageBox‘],

            alias : ‘controller.main‘,

            onClickButton : function() {
                Ext.Msg.confirm(‘Confirm‘, ‘Are you sure?‘, ‘onConfirm‘, this);
            },

            onConfirm : function(choice) {
                if (choice === ‘yes‘) {
                    //加入下面这一条语句
                    this.getView().getViewModel().set(‘name‘ , "修改后的title");
                }
            }
        });

加入了一条语句

this.getView().getViewModel().set(‘name‘ , "修改后的title");
this.getView().getViewModel().set(‘name‘ , "修改后的title");

这条语句的信息量也很大,分别来说明一下:

  • this表示的是当前的类,也就是MainController的实例。
  • this.getView() 表示当前控制器控制下的View类实例。
  • this.getView().getViewModel()表示该view实例绑定的Model。
  • set(‘name‘,‘修改后的title‘),将Model的值name修改,修改后panel的title会自动的进行更新。

执行后的结果如下:

我们对程序的第一处修改得以正确执行。

对于一个要学习好extjs的人来说,官方的例子和api是必不可少的工具。比如上面的一条语句中,我想得到当前控制器下的View,我也是去api上面的methods中找相应的函数,才能确定到底有没有和函数名称是什么。

时间: 2024-08-27 12:32:29

ExtJS5_MVVM特性的简单说明的相关文章

spring4.0.6最新稳定版新特性学习,简单学习教程(一)

Spring Framework 4.0 学习整理. Spring框架的核心部分就是Ioc容器,而Ioc控制的就是各种Bean,一个Spring项目的水平往往从其XML配置文件内容就能略知一二,很多项目,往往是外包公司的项目,配置文件往往是乱七八糟,抱着能跑就行,不报错就行的态度去写,然后在项目中后期发现各种缺失又去一通乱补,其结果就是,整个文档可读性极差,毫无章法.这也不能怪写这个XML的人,拿着苦逼程序员的工资干着架构师的工作必然是这个结果.为了程序员的幸福,我认为有必要来一套简单快速的官方

跟我一起学extjs5(04--MVVM特性的简单说明)

跟我一起学extjs5(04--MVVM特性的简单说明) 下面我们来看一下自动生成的代码中的MVVM架构的关系.Main是一个可视的控件,MainController是这个控件的控制类,MainModel是这个控件的模型类. 在上面的图片中,左边是Main.js中的代码,右边是MainController.js 和 MainModel.js中的代码,可以看到MVVM中的事件绑定和属性值绑定都用到了.上图中红色的部分标注了一个按钮"Button"的handler(即click)事件绑定到

apache基本配置管理(一):apache基本原理和特性和简单搭建

一.web服务器apache服务的架构和工作原理: web服务器                                                                                在开始了解Apache前,我们先熟悉一下web服务器,因为apache也是web服务器的一种. Web系统由客户端(浏览器)和服务器端两部分组成.Web系统架构也被称为B/S架构.最常见的Web服务器有Apache.IIS等,常用的浏览器有IE.Firefox.chrome等

C#特性的简单介绍

特性应该我们大多接触过,比喻经常使用的[Obsolete],[Serializable]等下面我就主要介绍一个特性的一些用法 摘自MSDN定义:用以将元数据或声明信息与代码(程序集.类型.方法.属性等)相关联.  意思就是把我们自定义的特性或者微软自带的特性和我们的代码进行组合,其实就是为我们某些代码附加一些信息 1:先看.Net带的三种特性 1.1:[Obsolete]这个预定义特性标记了不应被使用的程序实体 参数 message,是一个字符串,描述项目过时原因以及特带的项目. 参数 erro

mysql事务的四大特性与简单运用

package mysql; import java.sql.Connection; import java.sql.SQLException; import java.sql.Savepoint; import java.sql.Statement; import org.junit.Test; //事物特性ACID //原子性,指事务中的操作要么都发生,要么都不发生 //一致性.指事务前后数据的完整性必须保持一致(甲乙2人总额2000元,甲转账乙100元后,转账后总额还是2000元) //隔

3、手把手教你Extjs5(三)MVVM特性的简单说明

下面我们来看一下自动生成的代码中的MVVM架构的关系.Main是一个可视的控件,MainController是这个控件的控制类,MainModel是这个控件的模型类. 在上面的图片中,左边是Main.js中的代码,右边是MainController.js 和 MainModel.js中的代码,可以看到MVVM中的事件绑定和属性值绑定都用到了.上图中红色的部分标注了一个按钮“Button”的handler(即click)事件绑定到MainController.js中的函数“OnClickButto

extjs5(04--MVVM特性的简单说明)

下面我们来看一下自动生成的代码中的MVVM架构的关系.Main是一个可视的控件,MainController是这个控件的控制类,MainModel是这个控件的模型类. 在上面的图片中,左边是Main.js中的代码,右边是MainController.js 和 MainModel.js中的代码,可以看到MVVM中的事件绑定和属性值绑定都用到了.上图中红色的部分标注了一个按钮“Button”的handler(即click)事件绑定到MainController.js中的函数“OnClickButto

面向对象3大特性的简单理解

封装,继承,多态 1.封装: 类的内部结构不会被随意破坏,而且外部在调用时不需要了解内部结构, 只需要了解使用接口就可以了. 如:private int age;//外部无法直接访问 //但能通过方法来访问,并且还能增加一些逻辑判断 public void getAge(){ } 2.继承: 代码的重复使用 Java代码: public class Student extends Person{} 3.多态: 子类对象可以代替父类对象来使用 在后面的面向接口编程,体现的更加淋漓尽致 Java代码

C#图解教程 第二十四章 反射和特性

反射和特性元数据和反射Type 类获取Type对象什么是特性应用特性预定义的保留的特性Obsolete(废弃)特性Conditional特性调用者信息特性DebuggerStepThrough 特性其他预定义特性有关应用特性的更多内容多个特性其他类型的目标全局特性自定义特性声明自定义特性使用特性的构造函数指定构造函数使用构造函数构造函数中的位置参数和命名参数限制特性的使用自定义特性的最佳实践访问特性使用IsDefined方法使用GetCustomAttributes方法 Note 类的元数据包含