码迷,mamicode.com
首页 > Web开发 > 详细

extJs学习基础5 理解mvvm的一个小案例

时间:2014-11-19 15:41:55      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   color   os   使用   sp   

今天很是幸运,看到了一位大神的博客,学习了不少的东西。太感谢了.(满满的都是爱啊)

建议去学习这个大神的博客,真心不错。

博客地址:http://blog.csdn.net/column/details/extjs5.html?&page=1 

 

首先要建立一个简单的项目,我是使用的 Sencha Architect 3自动生成的

bubuko.com,布布扣

app下面的文件

bubuko.com,布布扣

 

在视图文件中建立

MyViwepost.js (view文件中)

 1 Ext.define(‘MyApp.view.MyViewport‘, {
 2     extend: ‘Ext.container.Viewport‘,
 3     alias: ‘widget.myviewport‘,
 4 
 5     requires: [
 6         ‘MyApp.view.MyViewportViewModel‘,
 7         ‘MyApp.view.MyViewportViewController‘,
 8         ‘Ext.panel.Panel‘,
 9         ‘Ext.button.Button‘
10     ],
11     
12     controller: ‘myviewport‘,  // 设置会找到 MyViewportViewController.js
13     viewModel: {
14         type: ‘myviewport‘     // 找到 MyViewportViewModel.js
15     },
16     padding: 12,
17     layout: ‘fit‘,
18 
19     items: [
20         {
21             xtype: ‘panel‘,
22             //设置此配置选项添加或删除数据绑定其他配置
23             bind: {
           //这里的 name和model中对应
24 title: ‘{name}‘, 25 }, 26 27 items: [ 28 { 29 xtype: ‘button‘, 30 text: ‘测试 控制器‘,
              //这里的控制器和 controller文件中对应
31 handler: ‘onClickButton‘ 32 } 33 ] 34 } 35 ] 36 37 });

myViewportViewController.js (view文件中)

 1 Ext.define(‘MyApp.view.MyViewportViewController‘, {
 2     extend: ‘Ext.app.ViewController‘,
 3     alias: ‘controller.myviewport‘,
 4     onClickButton: function(){
 5         Ext.Msg.confirm(‘Confirm‘, ‘要改变面板的title值吗?‘, ‘onConfirm‘, this);  
 6     },
 7 
 8     onConfirm: function(choice){
 9         if(choice === ‘yes‘) {  
10                 //加入下面这一条语句  
11                 //this.getView().getViewModel().set(‘name‘ , "修改后的title");  
12                 console.log(this.getView().getViewModel().set(‘name‘,‘my app‘));
13             } 
14     }
15 });

 

MyViewportViewModel.js (view文件中)

1 Ext.define(‘MyApp.view.MyViewportViewModel‘, {
2     extend: ‘Ext.app.ViewModel‘,
3     alias: ‘viewmodel.myviewport‘,
4 
5     //这个对象包含任意数据填充 视图模型 ,然后通过视图绑定。
6     data: {
7         name: ‘app‘
8     }
9 });

 

extJs学习基础5 理解mvvm的一个小案例

标签:style   blog   http   io   ar   color   os   使用   sp   

原文地址:http://www.cnblogs.com/shaoshao/p/4108315.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!