投放本站广告请联系:
extjscn#126.com
Sencha Touch Ext.app.Application
Ext.app.Application一般用于app.js中
用来初始化整个应用
可以预先加载controllers(控制器),models(模型),stores(数据源),views(视图)
例如:
Ext.application({ name: 'MyApp', controllers: ['Users'], models: ['User', 'Group'], stores: ['Users'], views: ['Main', 'ShowUser'] });
他们分别对应下面几个js文件
- app/model/User.js
- app/model/Group.js
- app/store/Users.js
- app/controller/Users.js
- app/view/Main.js
- app/view/ShowUser.js
如果应用结构比较复杂,例如在视图文件夹之中还创建了子文件夹,可以如下
Ext.application({ name: 'MyApp', controllers: ['Users', 'nested.MyController'], views: ['products.Show', 'products.Edit', 'user.Login'] });
他们分别对应下面几个js文件
- app/controller/Users.js
- app/controller/nested/MyController.js
- app/view/products/Show.js
- app/view/products/Edit.js
- app/view/user/Login.js
以上两种方式结合如下
Ext.application({ views: ['Auth.view.LoginForm', 'Welcome'], controllers: ['Auth.controller.Sessions', 'Main'], models: ['Auth.model.User'] });
他们分别对应下面几个js文件
- Auth/view/LoginForm.js
- Auth/controller/Sessions.js
- Auth/model/User.js
- app/view/Welcome.js
- app/controller/Main.js
为了方便管理,我一般只在这里引入控制层,其他的放在对应的控制层,app.js如下
//指定ux起调目录 Ext.Loader.setPath({ 'ux': 'app/ux' }); Ext.application({ name: 'app', controllers: ['Main', 'Job', 'User', 'New', 'Img', 'Question', 'Release'], requires: ['app.config', 'app.util'], //图标 icon: { '57': 'resources/icons/icon.png', '72': 'resources/icons/icon.png', '114': 'resources/icons/icon.png', '144': 'resources/icons/icon.png' }, //运行图标优先显示 isIconPrecomposed: true, //不同分辨率对应的启动图片 startupImage: { '320x460': 'resources/startup/splash.png', '640x920': 'resources/startup/splash.png', '768x1004': 'resources/startup/splash.png', '748x1024': 'resources/startup/splash.png', '1536x2008': 'resources/startup/splash.png', '1496x2048': 'resources/startup/splash.png' }, //当所有的引入项加载完成后,执行 launch: function() { // Destroy the #appLoadingIndicator element util.inIt(); Ext.fly('appLoadingIndicator').destroy(); } });
其中值得注意的属性有
appFolder 默认值:app 应用目录名称
所以我们的主要代码是放在app目录中的,当然也可以改成其他的值,比如test
不过更改之后最好如下设置,以免应用出现问题,个人建议默认即可
Ext.Loader.setPath({ 'app': 'test' });
name 默认值:app 应用程序名称
如果你改成其他的名称,比如test
那你注册一个model他的名称应该是类似test.model.user
个人建议使用默认值
icon 应用启动图标
如果使用cmd打包应用,需要配置
requires 引入指定js
比如全局配置文件,全局共用方法,消息提示组件等
关于Ext.app.Application有其他看法和疑问的欢迎留言探讨
作者: 魔狼再世
原文: http://www.cnblogs.com/mlzs/p/3473407.html
- 关键字:
- 要发表评论,请先登录