[ExtJS3.2 원본 매일 1시간] ExtJS에서 리셋 생성createCallBack과createDelegate의 공통점 (10)

2341 단어 ext
createCallBack과createDelegate는 ExtJS에서 리셋 함수를 만드는 두 가지 방법입니다. 아마도 많은 사람들이 이 두 가지 방법을 접하지 못했을 것입니다. 왜냐하면 ExtJS를 사용하는 과정에서 ExtJS에 대한 연구가 특별히 깊이 있지 않으면 이 두 가지 방법은 기본적으로 수면 위로 떠오르지 않을 것입니다. 또는 어떤 사람들은 정부나 다른 사람이 쓴 예에서 이 두 가지 방법을 본 적이 있기 때문에 예를 모방하여 사용하기 시작했습니다.그러나 그들은 도대체 무엇을 하는 사람들이고, 그들 두 사람의 공통점과 차이점은 무엇입니까?오늘 우리 얘기 좀 하자.
다음 내용을 보기 전에 제가 발표한 또 다른 블로그, ExtJS에서 Function 클래스에 대한 확장을 보십시오.
1.createCallBack과createDelegate의 공통점:
(1) 양자의 용도는 모두 지정된 매개 변수가 있는 리셋 함수를 만드는 것이다
(2) 둘 다 폐쇄 메커니즘을 채택하여 원 함수에 따라 새로운 함수를 만들었다
2. createCallBack과 createDelegate의 차이점:
(1)createCallBack은 이 콜백 함수를 만들 때 지정한 매개 변수이며, 실행할 때 전송된 매개 변수는 더 이상 유효하지 않습니다.
예:
      

         function testFunc(arg){
             alert(arg);
         }
         // , arg 'aa'
         var callBack = testFunc.createCallBack('aa');
         // callBack 
          callBack('bb');// aa
         callBack(); // 
      

또한:createCallBack은 리셋 함수의 역할 영역을 지정할 수 없습니다. 기본 역할 영역은 윈도우입니다.
    
(2)createDelegate 리셋 함수를 만들 때 매개 변수를 지정하고 실행할 때 매개 변수를 전송할 수 있으며 역할 영역을 전송할 수 있습니다.
createDelegate는 obj,args,appendargs 세 가지 인자를 전송할 수 있습니다.
obj: 리셋 함수에 대응하는 작용역
args: 리셋 함수를 만드는 매개 변수
appendargs: 파라미터를 추가할지 여부입니다. appendargs가true라면args 파라미터는 이 리셋 함수가 실행될 때 전송된 파라미터 목록에 추가됩니다. appendargs가false라면args 파라미터는 무효입니다.appendargs가 숫자 값이면 기본적으로 추가됩니다. 그룹에 추가된 위치는 appendargs의 값입니다.
예:
    

        function testFunc(arg1,data,arg3){
            this.dom.innerHTML=data['name'];// , data name 
            alert(arg1);// ‘aa’
            alert(arg3);// ‘bb’
        } 
         var store = new Ext.data.JsonStore(.....);
        var testSpan = Ext.get('testSpan');
        // testSpan testFunc this testSpan ,
         //args ['aa']
        //appendArgs true 
        //  arg1 'aa'
        var callBack = testFunc.createDelegate(testSpan,['aa'],true);

        store.on('load',function(){
          // 
            //store.getAt(0) data
          //bb arg3
          callBack(store.getAt(0),'bb');
        })
         
     

좋은 웹페이지 즐겨찾기