2013-07-01 42 views
0

下面是我用我的自定義控件code.I問題 問題已經創建了兩個自定義控制自定義指令角不正確的行爲

<pv-Show-Box></pv-Show-Box> 
<pv-Hello>Praveen</pv-Hello> 
both are working fine but <pv-show-Box> is not working when it is in reverse order 
like 
<pv-Hello>Praveen</pv-Hello> 
<pv-Show-Box></pv-Show-Box> 

mumodule.directive('pvShowBox', function() { 
    return { 
     restrict: 'E', 
     template: '<div><input type="text" ng-model="txtfieldData" ></input> {{ txtfieldData }}</div>', 
     replace: true 
    } 
}); 


mumodule.directive('pvHello', function() { 
    return { 
     restrict: 'E', 
     template: '<span ng-transclude>Hello </span>', 
     replace: true 
    }; 
}); 

任何想法?

+0

有什麼錯誤,你見過瀏覽器的控制檯嗎? – Chandermani

+0

需要的對象... –

回答

0

。在你的代碼中的小問題你正在使用NG-transclude但你沒有提到的指令transclude屬性,因此只需更改下面指令的定義,這將是雙向的

mumodule.directive('pvHello', function() { 
       return { 
        restrict: 'E', 
        transclude:true, 
        template: '<span ng-transclude>Hello </span>', 
        replace: true 
       }; 
      }); 
+0

是的,這是我的錯,但請你解釋爲什麼當我使用pvShowBox自定義控件先使用PvHello但同樣它不以相反順序工作時,同樣的代碼正在工作PvHello然後pvShowBox –

+0

這是因爲如果你先申報pvhello然後angular會在ng-translude中拋出一個錯誤,而進一步的角度插值將不起作用,但是如果你聲明爲revere,那麼pvshow將首先執行並且插值按預期工作。希望你明白 –

+0

謝謝ajay瞭解它。 –