ext-ui.com

中文教程

ExtJS框架基础:事件模型及其常用功能

前言

工作中用ExtJS有一段时间了,Ext丰富的UI组件大大的提高了开发B/S应用的效率。虽然近期工作中天天都用到ExtJS,但很少对ExtJS框架原理性的东西进行过深入学习,这两天花了些时间学习了下。我并不推荐大家去研究ExtJS框架的源码,虽然可以学习其中的思想和原理,但太浪费精力了,除非你要自己写框架。

对于ExtJS这种框架,非遇到“杂症”的时候我觉得也没必要去研究其源码和底层的原理,对其一些机制大致有个概念,懂得怎么用就行,这也是本篇博文的主要目的。

ExtJs中动态加载机制研究

昨天我们team对于extjs的动态加载机制做了些深入研究,这里先share下controller加载的结果。

以service registry portlet为例:
比如,在 liferay-portlet.xml中定义了:

所以我们的js的入口点是app.js,这其中创建了Ext.application并且声明了动态加载controller:

Sencha Touch中使用标准LocalStorage

虽然Sencha Touch本身有和Store关联的LocalStorageProxy,但是使用起来限制性较大,比如复杂的TreeStore就没法正常使用。

所以,我使用灵活性更好的Html5标准LocalStorage。

下面举例说明用法:

首先在App.js中声明全局LocalStorage变量:

在 Android 模拟器上设置 Sencha Touch

作为你开发的一部分,为安卓设备开发的 Sencha Touch框架应该在安卓虚拟机中被测试。这篇博客讨论如何安装和使用安卓虚拟机,使用命令行或者Sencha Architect构建器来进行 Sencha Touch开发。
被出售和使用的Android智能手机的数量最近超过了iOS智能手机。 (2013年4月的时代杂志的一篇文章披露出来的数据)。
很多Sencha Touch开发者针对的是Android平台。这篇博客将从头到尾向你展示如何搭建Android开发环境。文章中的截图和路径是Mac OS上的,Linux上的过程几乎是相同的,Windows平台的过程也是非常相似的。

Sencha Touch list css(样式) 详解

[code]
/*
*自定义列表页面
*/
Ext.define('app.view.util.MyList', {
alternateClassName: 'myList',
extend: 'Ext.List',
xtype: 'myList',
requires: ['Ext.plugin.ListPaging', 'Ext.plugin.PullRefresh'],
config: {
cls: 'list',
plugins: [{
xclass: 'Ext.plugin.ListPaging',
autoPaging: true,
noMoreRecordsText: '没有更多内容了',
loadMoreText: '加载更多...'
},
{
xclass: 'Ext.plugin.PullRefresh',
lastUpdatedText: '上次刷新时间:',
loadingText: '加载中...',

聚合内容