2017-01-13 9 views
1

WYSIWYGで使用されたときにAngular関数が添付されたhtmlの束が返されるカスタムWordPressショートコードがあります。AngularJS関数へのWYSIWYGショートコード

以下は、私がしようとしていることの例です。

ショートコード:

add_shortcode('example', function($atts) { 
    extract(shortcode_atts([ 
     'string' => 'This is default text' 
    ], $atts)); 

    ob_start(); 
     ?> 
      <div class="example-layout"> 
       <div class="container"> 
        <button ng-click="do_something('<?= $string; ?>')"> 
         Click here 
        </button> 
       </div> 
      </div> 
     <?php 
    return ob_get_clean(); 
}); 

用途:[example string="Override default string"]

戻り値:

<div class="example-layout"> 
    <div class="container"> 
     <button ng-click="do_something('Override default string')"> 
      Click here 
     </button> 
    </div> 
</div> 

アンギュラ機能:

これはうまくいかないが、私は賢明な解決策を見つけるのに苦労している。

助けや助言があれば助かります。

答えて

1

角度で

<div class="container" ng-controller="TodoCtrl"> 
    <button ng-click="do_something('testClick')">CLICK ME</button> 
    </div> 

この方法を試してみてください:

function TodoCtrl($scope) { 

     $scope.do_something = function (name){ 
     angular.isFunction($scope[name]) 
      $scope[name]() 
     } 

     $scope.testClick = function(){ 
      alert("Called"); 
     } 
    } 
関連する問題