将Flexisel滑块包装到Angular Directive中

时间:2015-04-13 05:23:18

标签: angularjs

我尝试将Flexisel与Angular一起使用,但它无法以某种方式工作。 这是plnkr link

var app = angular.module('angular.controls.flexSlider', [])

app.directive('flexCarousel', function () {
    return {
        restrict: 'E',
        link: function (scope, element, attrs) {
            var options = scope.$eval($(element).attr('data-options'));
            console.log(options);
            $(element).flexisel(options);               
        }
    };
});

1 个答案:

答案 0 :(得分:0)

我已经分叉你的插件,请检查那里的修复。 http://plnkr.co/edit/zH4u3MwkD6HX39I8PFEr?p=preview

在第一种情况下,您需要一个指令模板:

var app = angular.module('angular.controls.flexSlider', [])

app.directive('flexCarousel', function () {
    return {
        restrict: 'E',
        transclude : true,
        template : "<ng-transclude></ng-transclude>",
        scope : {
          options : "="
        },
        link: function (scope, element, attrs) {

            $('#flexisel').flexisel(scope.options);

        }
    };
});