Controller 学习笔记

1. 四种调用controller中的函数:

  • html link:
    <a href="#Home/about"class="menu-item">About</a>

    格式: <a href="#route">some link</a>
  • Ext.redirect('Home/index'), Ext.redirect是Ext.Dispatcher.redirect的简写,会自动添加这个Home/index 到历史栈,但是无法添加动画param,来显示新页面时的动画,但会自动添加historyUrl
  • Ext.dispatch 可以传递param,这里用到4个params:
    controller:指定哪个controller,相似scope
    action:指定controller中哪个action将被调用
    historyUrl: 这里必须显示著名将要调用的 :controller/:action,如果不添加这个param,当从其他页面B返回到这个页面A,游览器地址仍旧是地址B,而不是A,所以从A页面调用B页面将无法工作,因为游览器以为已经到了页面B。剩下的custom property "animation"来传递一个动画变量,animation:{type: 'slide', reverse:true}: reverse表示当加载另一个页面时用相反的方向,原来是left,现在是right
  • Ext.ControllerManag.get('ControllerId')可以直接得到一个对应的Controller,通过这个来直接调用它的方法.例如:
    Ext.ControllerManager.get('Search').index();


2. 通过this.render创建一个指定类型的view, 然后this.application.viewport.setActiveItem来加载这个view:

index: function(options){
	if(!this.indexView){
		this.indexView = this.render({
			xtype: 'HomeIndex',//建立一个自定义的view
		});
	}
	var backBtn = this.application.viewport.query('#backBtn')[0];
	backBtn.hide();
	this.application.viewport.setActiveItem(this.indexView, options.animation);//如果没有给出animation也没关系
},



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值