ExtJS 4 Beta 2预览:Ext.Brew包

    我们还没有介绍过ExtJS 4众多特性之一的新Ext.Brew包。这是独一无二的Javascript框架,Ext.Brew是采用Sencha独特技术酿造的的一杯完美的茶。

    使用新数据包的强大功能,可在任何时候构建一个生成一致均衡的茶的应用程序。开始之前,首先定义一个部件之间用于交互的模型。

Ext . onReady ( function ( )   {
        Ext . regModel ( ' Cups ' ,   {
              fields :   [ ' material ' ,   ' size ' ]
        } ) ;
 
        Ext . regModel ( ' Teas ' ,   {
              fields :   [ ' name ' ,   ' caffeine ' ,   ' brewtemp ' ]
        } ) ;
 
10          var   cupStore   =   new   Ext . data . Store ( {
11                model :   ' Cups ' ,
12                sorters :   [ ' size ' ] ,
13                data :   [
14                        {   material :   ' Ceramic ' ,   size :   ' 6oz '   } ,
15                        {   material :   ' Ceramic ' ,   size :   ' 12oz '   } ,
16                        {   material :   ' Glass ' ,       size :   ' 8oz '   } ,
17                        {   material :   ' Glass ' ,       size :   ' 16oz '   }
18                ]
19          } ) ;
20   
21          var   teaStore   =   new   Ext . data . Store ( {
22                model :   ' Teas ' ,
23                sorters :   [ ' name ' ] ,
24                data :   [
25                        {   name :   ' Sencha ' ,         caffeine :   45 ,   brewtemp :   175   } ,
26                        {   name :   ' Earl   Grey ' ,   caffeine :   40 ,   brewtemp :   210   } ,
27                        {   name :   ' Oolong ' ,         caffeine :   70 ,   brewtemp :   176   } ,
28                        {   name :   ' Herbal ' ,         caffeine :   0 ,     brewtemp :   210   }
29                ]
30          } ) ;
31  } ) ;
 
 
 

    现在我们已经有了一个茶的模型和Store,可以泡茶了。很不幸,在Beta 2版新的Brew包只能泡Sencha茶,如果想尝试泡其它的茶,可能会导致滚烫的水从笔记本中弹出,因此,请尽量谨慎使用测试版软件。

    要使用Ext.Brew包,你必须从基类扩展它并提供Store,以便让它知道茶的类型和如何操作。在实例中,可执行开始、暂停和停止操作。当Brew处于活动状态,可检查状态和临时属性,以便为用户提供一个有很好的用户体验的Extjs应用程序。onready事件将根据模型变量在brew完成时被调用。不过要小心的是,在state值为“active”时,不要暂停或停止brew,这功能还没进行完整的测试,可能会导致弱的brew。

Ext . define ( ' MyApp . BrewMaster ' ,   {
        extend :   ' Ext . Brew ' ,
 
        cups :   cupStore ,
        teas :   teaStore ,
 
        sugar :   ' medium ' ,
        milk :   ' skim ' ,
 
10          initComponent :   function ( )   {
11                  //   run   your   brew   management   code   here   such   as
12                  //   checking   brewtemp   before   the   brew   starts
13   
14                  MyApp . BrewMaster . superclass . initComponent . apply ( this ,   arguments ) ;
15          }
16   
17          onReady :   function   ( )   {
18                  if   ( this . brewtemp   >   100 )   {
19                          //   the   brew   is   finished,   but   it's   still   too   hot   to   enjoy
20                          setTimeout ( onReady ,   500 ) ;
21                  }
22          }
23   
24  } ) ;

      希望通过新的Ext.Brew,可以让你每次都能泡一杯完美的茶。在Sencha总部,在一个星期内,已经有一些使用Ext.Brew的应用程序在允许,不过都有轻微的一级烫伤。

作者:Aditya Bansod

Aditya是Sencha的产品管理高级总监,负责产品的规划和Sencha产品线的战略。在来Sencha之前,Aditya在Adobe和微软任职各种高级产品管理的角色,侧重于发展商、移动媒体和消费电子领域。

原文:http://www.sencha.com/blog/ext-js-4-beta-2-preview-the-ext-brew-package/

posted @ 2011-04-02 14:52  程序员天下  阅读(154)  评论(0编辑  收藏  举报