0

我正在尝试在我的 Angular js 应用程序中使用 Kendo 网格。我正在创建一个指令,以便可以在应用程序的不同表中使用它。一旦 ng-repeat 渲染了我想要调用的 dom:element.kendogrid()。由于 ng-repeat 没有渲染后回调,因此有人建议使用两个指令:1-

angular.module('app')

.directive('rowDirective', function () {
    return function(scope, element){
        if (scope.$last){
            scope.$emit('LastElementMessage');
        }
    };
});

2-

angular.module('app')

.directive('tableDirective', function () {
    return function(scope, element){
        scope.$on('LastElementMessage', function(event){
            $(element).kendoGrid({
                scrollable: true,
                sortable: true,
            });
        });
    }
});

这种方法工作正常,一切都按应有的顺序执行。ng-repeat 可以自己正常工作,这意味着它以正确的顺序呈现项目,但是当我使用 kendo-grid 时,它会在网格内呈现:{{customer.CustomerID}}。有没有人经历过这样的事情?

4

2 回答 2

0

好吧,也许你应该看看http://kendo-labs.github.io/angular-kendo/上的 Angular Kendo UI 项目——它在将 Kendo UI 与 AngularJS“结合”方面做得相当不错。

于 2013-07-31T04:23:37.793 回答
0

See http://demos.telerik.com/kendo-ui/grid/angular.

There are specific custom directives that enable kendo ui to play nicely with angular js. E.G. k-data-source, k-columns, k-selectable, k-pageable. These should be included in the latest version of kendo ui. Just make sure to include "kendo.directives" as a dependency on your top level-module :

var MyModule = angular.module('MyModule', ["ngRoute", "kendo.directives"]);
于 2015-07-15T16:44:24.490 回答