工程里用到了Sencha ExtJs,因为特定的组件原因,导致很多组件得自己。组件定义完成之后的 Success_callback 因为之前没做过,所以这次把它记录下来方便以后查阅。直接上代码:
界面调用
<script type="text/javascript"> function aaa(){ var student_panel = new WX.student.AddStudent({ //传入回调函数,直接显示。 callback_fun:function(){ alert('我是界面的回调函数'); } }).show(); } </script>
组件部分代码
Ext.define('WX.student.AddStudent', { extend: 'Ext.window.Window', modal:true, height: 585, width: 684, layout: { type: 'fit' }, title: '新增学生', bodyPadding:'10 10 10 10', //用于组件函数回调 callback_fun:function(){}, initComponent: function() { var me = this; ...... // Panel 组件 buttons:[{ text:'保存', handler:function(){ //发送Ajax请求保存用户数据. //调用STORE之后的自定义回调函数 this.callback_fun } }] } .....
这里的做法有点类似Java的接口回调,在自定义模块中定义方法,提供按钮回调,界面初始化组件的时候用方法覆盖组件中的回调方法,达到回调的目的。