2016-09-23 14 views
0

私は指示に取り組んでおり、私は問題に直面しています。angle指示子 - 要素...(...)が定義されていません

基本的に、私の指示で、私はプラグインを(この:https://github.com/soundar24/roundSlider)を使用しようとしていますし、私はこのエラーを取得しています:

angular.module('myPicker', []).directive('picker', [ 
    "$timeout", function($timeout) { 
    var linkFunction, setColor; 
    setColor = function(value) { 
     var el, temperatureValue; 
     el = $('.rs-range-color'); 
     temperatureValue = parseInt(value); 
     el.attr('class', ''); 
     return el.addClass('rs-path rs-transition rs-range-color animate-color-change temp-' + temperatureValue); 
    }; 
    $.fn.roundSlider.prototype.defaults.create = function() { 
     var endLabel, numberTag1, numberTag2, o, startLabel; 
     o = this.options; 
     startLabel = this._valueToAngle(o.min); 
     numberTag1 = this._addSeperator(startLabel, 'rs-tooltip-text custom-label num1 '); 
     numberTag1.children().html(o.min).rsRotate(-startLabel); 
     endLabel = this._valueToAngle(o.max); 
     numberTag2 = this._addSeperator(endLabel, 'rs-tooltip-text custom-label num2 '); 
     numberTag2.children().html(o.max).rsRotate(-endLabel); 
     return setColor(o.value); 
    }; 
    linkFunction = function(scope, element, attrs) { 
     var hiddenElement; 
     element.roundSlider({ 
     min: attrs.min, 
     max: attrs.max, 
     radius: attrs.size, 
     sliderType: 'min-range', 
     startAngle: 315, 
     circleShape: 'pie', 
     width: attrs.width, 
     value: attrs.value, 
     step: 0.5, 
     editableTooltip: false, 
     tooltipFormat: function(attrs) { 
      return attrs.value.toFixed(1) + ' °C'; 
     } 
     }); 
     if (scope.tempPicker.provvisorial === null) { 
     scope.tempPicker.provvisorial = attrs.value; 
     } 
     element.on('change drag', function(e) { 
     if (e.value !== void 0) { 
      return scope.$apply(function() { 
      return setColor(e.value); 
      }); 
     } 
     }); 
     element.on('stop', function(e) { 
     return scope.tempPicker.provvisorial = e.value; 
     }); 
     element.on('change', function(e) { 
     return scope.tempPicker.provvisorial = e.value; 
     }); 
     scope.$on('$destroy', function() { 
     element.roundSlider("destroy"); 
     return element.remove(); 
     }); 
     hiddenElement = angular.element("#picker-hidden-text-box"); 
     return hiddenElement.on('change', function() { 
     element.roundSlider("option", "value", parseInt(hiddenElement.val())); 
     return scope.tempPicker.provvisorial = parseInt(hiddenElement.val()); 
     }); 
    }; 
    return { 
     restrict: 'E', 
     templateUrl: './directives/Picker/Picker.tpl.html', 
     replace: true, 
     link: linkFunction 
    }; 
    } 
]); 

element.roundSlider is not a function

私の指示のためのコードは以下のとおりです。

ここで私が理解できないことは次のとおりです。

roundSliderプラグイン$.fn.roundSlider.prototype.defaults.create = function() {...の関数も変更していますが、ここで動作します。 $ .fn.roundSliderは実際にそこにあり、未定義ではないことがわかります。

私は本当になぜこれをやっているのか分かりません。

また、私は(ここで指摘のように:https://medium.com/@darilldrems/angularjs-jquery-in-angularjs-directive-96ad3d150d86#.4mc3ymoq6)をangular.element.roundSliderを使用しようとしましたが、私は同じエラーを取得

あなたは、コードの他の部分が必要な場合は、

おかげ

+0

このような問題のためにプランクを作成すると、通常は多くの場合に役立ちます。 Idk、mbがelement.roundSliderをタイムアウトさせると役立ちます。 –

答えて

0

を利用する前にroundSlider JavaScriptを追加してみてください、私は

を追加し、それを固定

これは現在使用中です

0
を依頼することを躊躇しません

終わりに

関連する問題