【问题标题】:KendoUI Grid Cell Template with promise带有承诺的 Kendo UI 网格单元格模板
【发布时间】:2017-07-10 13:38:00
【问题描述】:

我必须使用模板来翻译网格的单元格值。

由于某些原因,我调用翻译的函数返回了一个承诺。

我找到了与我的问题相关的以下主题

Asynchronous cell template

我正在使用带角度的方法

ng-bind-html

$scope.lookUpEventNameAsync = function(data) {

    refData.events().fetch(function() {
        var eData = refData.events().data();
        var refEvent = eData.find(function(re, i, a) {
            return re.code === data.eventCode;
        });
        $("#async_tse_" + data.key).html(refEvent.name);
    });

    return $sce.trustAsHtml("<div id='async_tse_" + data.key + "'> </div>");
};

$scope.gridTimesheetColumns = [
    {
        field: "eventCode",
        title: "Event", 
        template: "<span ng-bind-html='lookUpEventNameAsync(dataItem)'> </span>"
    },
....

我做了一个类似的事情来适应我拥有的代码并且它正在工作。

但现在的问题是它多次调用$scope.lookUpEventNameAsync 并且永远不会停止调用它,这会冻结屏幕并使应用程序无法使用。

您知道为什么以及如何预防吗?

【问题讨论】:

    标签: javascript angularjs kendo-ui telerik


    【解决方案1】:

    我需要一种单向数据绑定,如下所示:

    $scope.gridTimesheetColumns = [
    {
        field: "eventCode",
        title: "Event", 
        template: "<span ng-bind-html='::lookUpEventNameAsync(dataItem)'> </span>"
    },
    

    【讨论】:

      猜你喜欢
      • 2019-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多