`

extjs的视图模型和绑定

 
阅读更多
深度绑定
 
myinfo: {
    autoLoad:true,
    model:'EPMMS.model.Memberinfo',
    proxy: {
        type:'ajax',
        url : 'start/index',
        extraParams:{my:true},
        reader: {
            type: 'json',
            rootProperty: 'memberinfo'
        }
    },
}

formulas:{
    info:{
        bind:{bindTo:'{myinfo}',deep:true},//显式绑定+深度绑定
        get:function(store){
            return store.first();
        }
    }
}
 
 
 
使用deep:tree选项,当bindTo选项指定的内容发生任何改变时都触发get计算,否者只有当对象引用改变时才触发get计算,如果myinfo的值是动态获取的就必须用这种方式才能读取到值。
显示绑定
get方法通过回调函数和bindTo传递参数,而不是Extjs检测可能引用的对象引用,要使用deep绑定,必须用显示绑定
 
model绑定
links:{ theUser:{ type:'User', id:17}},
 
id为model的id,extjs会自动发起请求,model需要配置proxy选项
把model的属性直接释放到viewModel中,可以直接访问属性名,也可以访问theUser对象
 
记录绑定
Ext.create('Ext.Component',{ bind:{ data:{ reference:'User', id:42}}});
 
关联记录绑定
Similar to a record bind, one can also bind to an association, say the User's Address record:
Ext.create('Ext.Component',{ bind:{ data:{ reference:'User', id:42, association:'address'}}});
分享到:
评论

相关推荐

    extjs4Mvc事例

    5. **ViewModel(视图模型)**:虽然在ExtJS 4中不是必需的,但ViewModel是推荐的最佳实践,特别是在数据绑定变得复杂的场景下。ViewModel提供了一种方式来链接模型数据和视图组件,使得数据可以直接在视图中呈现,...

    Extjs4 desktop

    4. **ViewModel(视图模型)**:虽然不是传统的MVC组成部分,但ExtJS 4引入了ViewModel的概念,它是模型和视图之间数据绑定的媒介。ViewModel允许在不直接修改视图或模型的情况下传递数据,简化了数据驱动的视图更新...

    ExtJS的MVC模式

    在ExtJS中,视图通常通过布局(layout)来组织这些组件,并通过绑定(binding)将模型的数据展示出来。当模型数据发生变化时,视图会自动更新,反之亦然。 3. **控制器(Controller)**:控制器作为模型和视图之间...

    ExtJs3.3中文API.CHM_extjs3.3中文文档_

    2. **数据绑定**:ExtJS支持双向数据绑定,使得视图和模型之间的数据同步变得简单。数据源可以是JSON、XML或其他数据格式,与服务器端的数据交互也十分便捷。 3. **布局管理**:框架内置了多种布局方式,如Fit布局...

    extjs_mvc架构_实例

    5. **视图模型(ViewModel)**:ViewModel是EXTJS 5引入的新概念,它为视图提供了一个数据绑定层,使得视图可以独立于模型直接访问数据,降低了视图和模型的耦合度。 **二、EXTJS MVC架构的实现流程** 1. **初始化...

    extjs4.0 MVC 示例代码

    视图模型(ViewModel)是EXTJS 4.0引入的新特性,它作为模型和视图之间的中间层,提供数据绑定功能。视图模型可以将模型的数据转换为适合显示的形式,也可以处理复杂的计算逻辑。 **7. App** EXTJS 4.0中的应用程序...

    ExtJS MVC 官方实例

    学习这个官方实例,你将掌握如何组织和编写高效的ExtJS MVC应用,包括如何定义模型、创建视图组件、配置控制器、以及如何使用Store进行数据操作。这将帮助你在实际项目中更好地利用ExtJS的强大功能,开发出高性能、...

    extjs4MVC实现

    模型处理数据和业务逻辑,视图负责展示数据,而控制器充当两者之间的协调者,接收用户的输入并调用相应的模型和视图方法。 2. ExtJS4.0 MVC 结构 - Models:在 ExtJS 中,模型定义了数据对象的结构和验证规则。...

    Extjs4.0 mvc模式开发

    在ExtJS中,视图通常是组件(如表格、窗口、面板等),它们通过绑定到模型或store来展示数据。 - **控制器(Controller)**:作为模型和视图之间的协调者,处理用户交互事件,更新视图,并与模型进行通信。控制器...

    ExtJS4 MVC 混合实例

    在ExtJS4中,控制器通过Ext.app.Controller类创建,可以定义事件监听器和操作(Action),控制视图和模型的交互。 在提供的实例中,你可能会看到以下关键部分: - **app.js**:这是应用的主入口文件,通常包含了...

    EXTJS 的 MVC 开发例子

    5. **ViewModel**:ViewModel在EXTJS 4以上版本引入,作为数据绑定的桥梁,将模型数据与视图直接关联,简化了数据的同步。ViewModel通过`bind`和`data`属性来定义数据绑定关系,可以减少对控制器的依赖,使代码更加...

    Extjs4 MVC小实例

    视图通常会绑定到模型,当模型数据变化时,视图自动更新。例如: ```javascript Ext.create('Ext.container.Viewport', { layout: 'fit', items: { xtype: 'grid', store: Ext.data.StoreManager.lookup('...

    Extjs4.1 小例子(适合extjs初学者学习使用)

    3. **数据绑定**:观察如何使用Store、Model和Proxy将数据加载到视图中,并实现数据的双向绑定。 4. **事件处理**:学习如何监听用户交互,例如点击按钮、选择列表项等,并响应相应的事件。 5. **API使用**:熟悉...

    extjs 简单框架搭建

    6. **数据绑定**:EXTJS支持双向数据绑定,通过Model和Store管理数据。你可以定义数据模型(Model),创建数据存储(Store),并与视图组件进行绑定。 7. **路由与控制器**:EXTJS的控制器(Controller)用于管理...

    ExtJs源码上传和下载

    - 数据绑定:支持数据模型(Model)、数据存储(Store)和数据视图(View)的绑定,实现了数据的实时更新和同步。 - 丰富的组件库:包括各种表单元素、树形视图、图表、菜单、工具栏等,满足不同应用场景的需求。 - ...

    ExtJS6 MVC 精简示例

    通过这个精简示例,开发者可以学习到如何组织ExtJS6 MVC应用程序的结构,理解模型和视图间的双向绑定,以及如何通过控制器处理用户交互。此外,它还将展示如何使用ExtJS6的组件系统来创建丰富的用户界面,并与后端...

    web流程设计器extjs做的design

    Web流程设计器使用ExtJS进行设计,充分利用了其组件化、数据绑定和事件驱动的特性,实现了直观、灵活且功能强大的流程建模环境。通过这样的设计器,业务人员和技术人员可以协作设计和优化工作流程,提高组织的效率和...

    Extjs 2.2 Extjs 3.21 js

    同时,3.x版本增强了数据绑定和模型(Model)的概念,使得数据与视图之间的交互更加直观和高效。3.2.1还修复了许多已知问题,提高了性能和稳定性。此外,ExtJS 3.x开始支持Safari和Opera浏览器,扩大了其跨平台的...

    ExtJs2相关书籍

    在实际开发中,掌握ExtJS2的关键在于熟悉其组件模型和数据绑定机制。ExtJS2采用MVC(Model-View-Controller)设计模式,通过数据store与视图组件的绑定,实现了数据的自动更新,大大简化了前端数据管理。此外,ExtJS...

    Extjs5手动搭建MVVM项目demo

    3. **ViewModel(视图模型)**:ViewModel是模型和视图之间的桥梁,它提供了一个可观察的对象,用于绑定视图和模型。在ViewModel中,你可以定义计算属性、监听器以及方法,这些都可用于处理数据转换、事件处理等任务...

Global site tag (gtag.js) - Google Analytics