extjs 的 mvc 模式真的很 nb,
如果 刚 开始学习 extjs ,或则 即将 从事 这个 开发,我建议大家不要到 网上 找什么教程,全他妈的,误人子弟。
下个 Sencha Architect 结合 官网 api 就 可以学习了。
有很多人,都说 用 Sencha Architect 编写
限制了自由,不灵活,
我在这里说一下,什么 语言 都有他的 游戏规则,
如果提出上面疑问的 朋友,你是不是觉得,自己写的 extj 代码,是不是,经常要考虑兼容问题,是不是 感觉,程序不稳定。或则出现不知名bug,或者 extjs 不知怎么的就变很慢了。或者extjs 一升级 怎么我 的程序 就,不行了。
然后就大骂 ,extjs.
因为,你还是现在想 我 在文本行里编写 js 下怎么,怎么的灵活,而在 这个 狗屁 编辑器了,想加代码的 地方不让加,
有的则是
发布后老子在改,看你编辑算鸟,像这样的 朋友 出现 以上 问题了就不要 乱骂。
最多看看 官网的 mvc 的基础教程
这里说说 extjs 的组件 重用,
我在这里,建议大家,把各个组件的数据交互,和事件 连接 ,由 contral 完成,
view:只实现界面展示,和内部事件定义,就是,怎么把一个最 底层的 事件暴露,到组件 目录下。
建立自己的 控件,和组件关系(一般为树形)
越到后面,你会发现,你要写的代码,越简单,甚至到了,只需要,把 contral 注册到应用里就 可以了。(关键 你的 了解你的树,以及contral 的作用级)
有很多朋友,做一个 页面就 一个 contral,
因为 官网 ,和网上的列子就是这样,
他们 是写书的,搞鸡巴的鸟,根本没考虑过实际运用,实际中不可能那样用
如:
1.1我这里 集成了 查询,编辑,和修改
Ext.application({
name: 'RHIS',
appFolder: appPath + '/app',
controllers: ['sys.editCn','sys.mainCn','sys.list']
, autoCreateViewport: false
});
1.2
我取掉一个 ,contral,他 就少个 功能,那我替换一个 contral ,他可能完成的 功能,就不一样
我还可以把这个 模块 拆分成几个,也可以把几个模块 结合到一个 模块里
这里大家 往往 不明白 extjs ref 的 真正 妙处 在那里,
就是 别名,给你在程序 中 的别名,
好出在于 重写 代码 时,你可以不修改一行代码,只需要,换引用就 可以了。在编辑器里点点鼠标,最多,10秒钟
我现在的 extjs 与 jquery 混合编的 程序,但是 我的程序 只要,SenchaArchitect 一发布就 可以直接 运行,或者 直接发布到服务器。
所有 的代码 包括 jquery 的代码 都是 用 SenchaArchitect 编写