离子滑动盒双向绑定不起作用

时间:2016-07-19 05:49:04

标签: angularjs ionic-framework ion-slide-box

我遇到离子滑动盒实现的问题

Link to sample not working

我想实现双向绑定,如下所示

Two way binding with out ionic slidebox

任何帮助表示赞赏

由于

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。可能有更好的方法来修复它,但我现在只能想到这个

我必须稍微修改ion-slide-box指令

这是我的代码:

Ionic bundle.js(在此创建双向绑定)

IonicModule.directive('ionSlideBox', [........,
   function(...){
       return{
         scope:{
          counter: "=",
          ...... 
        },
        controller: [.....,function(){
         _this.getCounter = function(){   
            return $scope.counter;   
          }

         _this.setCounter = function(val){
             scope.counter = val;
             $scope.$broadcast( "IncrementValue" );
          }
        }]
   }
}

<强> Directive.js

directive('updateCounter', function(){
return{
    restrict : 'A',
    scope : false,
    require : '^ionSlideBox',
    link : function(scope,element, attrs,ctrl){
        $(element).click(function(){
            scope.counter = ctrl.getCounter();
            scope.counter--;
            ctrl.setCounter(scope.counter);
        })
    }
}})           

<强> ViewController.js

$scope.$on(
  "IncrementValue",
  function handleIncrementValue() {
        $scope.counter++;
  }
);
$scope.triggerEvent = function() {
  $scope.$broadcast( "IncrementValue" );
};

<强> View.html

 <ion-slide-box counter="counter">
     <ion-slide>
       <button ng-click="trigger()">Increment box</button>
       <button update-counter>Decrement box</button>
     </ion-slide>
 </ion-slide-box>

如果有更好的方法请告诉我

由于