2016-06-08 2 views
0

я продлил кендо сеткикендо UI пользовательского виджета Угловой директивы

(function($) { 
var MyGrid = kendo.ui.Grid.extend({ 
    init: function(element, options) { 
     kendo.ui.Grid.fn.init.call(this, element, options); 
    }, 
    options: { 
     name: 'MyGrid' 
    } 
    }) 
    kendo.ui.plugin(MyGrid); 
    })(jQuery); 

Как использовать пользовательский виджет в угловом способе.

В настоящее время я могу видеть, новая директива успешно создавать, но не интерполирования.

ответ

-1

Согласно Telerik обсуждение на форуме здесь:

http://www.telerik.com/forums/extending-the-grid-in-angular-kendo-does-not-work

Проблема, кажется, в этом блоке кода в kendo.angular.js:

defadvice(kendo.ui, "plugin", function(klass, register, prefix){ 
    this.next(); 
    pendingPatches = $.grep(pendingPatches, function(args){ 
     return !defadvice.apply(null, args); 
    }); 
    createDirectives(klass, prefix == "Mobile"); 
}); 

Это вызывает все звонки на kendo.ui.plugin() для перехвата и для createDirectives() для вызова переданного класса. Проблема в том, что директива kendoGrid уже создана по умолчанию не выдвинутой сетке, и поэтому, когда kendo.ui.plugin() вызываются снова для новой расширенной сетки, вторая директива kendoGrid создается, который вызывает AngularJS бросить несколько директивы ошибка.

Как вы можете прочитать в официальном ответе, Telerik не поддерживает расширенные виджеты пользователей.

Все это, как говорится, я в настоящее время исследования с использованием угловые декораторам фактически расширяют директивы, созданные Кендо для своих виджетов, как описано здесь:

https://coderwall.com/p/-8vjxa/cleanly-extend-3rd-party-angularjs-directives

+0

Хотя эта ссылка может ответить на этот вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. - [Из обзора] (/ review/low-quality-posts/13877904) – eisbehr

+0

Надеюсь, что сейчас лучше. – AsGoodAsItGets

Смежные вопросы