温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CMS:文章管理之控制器

发布时间:2020-06-22 09:35:20 来源:网络 阅读:555 作者:tianxiaode2008 栏目:编程语言
有了编写用户管理的控制器的经验,写这个问题应该不大。不过,文章管理的控制器还是要考虑一下怎么写这个问题,因为在视图里涉及分类的操作和文章的 操作。这确实是一个比较费神的事。在这里,问题的焦点就是需要不需要拆分的问题了。根据松耦合的原则,必然是拆分的,但是拆得太小,太凌乱,写代码是比较 痛苦的,尤其是象Javascript这样灵活但结构不太严谨的语言。
笔者开发大型系统经验不多,因而一向比较随心所欲,方便不碍事就好,因而,笔者在这里倾向于不进行拆分,就单独一个控制器,有兴趣的读者可以尝试自己拆分一下。
在Scripts\app\controoler目录下,创建一个名称为Content.js的控制器,根据用户管理的控制器的经验,先写下以下代码:
Ext.define('SimpleCMS.controller.Content',{
    extend: 'Ext.app.Controller',
    models: [
        'Category', 'CategoryTree','CategoryCombo', 'Content'
    ],
 
    stores: [
        'CategoriesTree', 'CategoriesCombo','Contents'
    ],
 
    views: [
    ],
 
    refs: [
    ],
 
    init: function () {
        me.control({
        });
    }
 
});
 
代码中,以把所有模型和Store包括进控制器了。视图还没创建,因而还没有定义。引用也是一样。
现在切换到MainPanel的控制器,在“#contentPanel”的activate事件监听代码下,删除console.log的代码,添加以下代码:
this.application.getController('Content').init();
 
这样,文章管理的控制器就被加载到应用了,后续的工作就是在文章管理控制器的init方法内实现视图的加载了。
还要修改一下MainPanel视图的activeTab配置项,修改回0,让文章管理标签页显示为默认标签页。
至此,控制器的工作告一段落,接下来的就是定义视图,然后完成控制器的操作了。
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI