【问题标题】:Angularjs ng-grid using Grails JSON dataAngularjs ng-grid 使用 Grails JSON 数据
【发布时间】:2015-06-27 18:33:03
【问题描述】:

Angular ng-grid 数据绑定问题

我有一个 Groovy/Grails 应用程序,该应用程序有一个域“Grid”类,我已为其注册了一个自定义“marshaller”来生成可用于 Angularjs ng-grid 的 JSON..

说“网格”是 Grid 类的实例, “grid as JSON”生成所需的 JSON。

我有一个 Grails/groovy 控制器来加载数据并返回 JSON:

def index() {
    def grid = Grid.first()
    grid as JSON
}

但我不知道如何在我的 GSP 中将此 JSON 数据导入 ng-grid:

<body ng-controller="MyCtrl">
    <script>
    var app = angular.module('myApp', ['ngGrid']);

    app.controller('MyCtrl', function($scope) {

        $scope.gridOptions = ${grid};  // NEED HELP HERE !
    });
    </script>

    <div class="gridStyle" ng-grid="gridOptions"></div>
</body>

我不知道如何将数据放入 $scope.gridOptions。当我查看使用 firebug 生成的内容时,我看到 $scope.gridOptions 是

{&quot;columnDefs&quot;:[{&quot;field&quot;: ...

这是编码的 JSON 数据。 (引号被编码)。在 JSP 中的 Grails 后端和 ng-grid 之间传递 JSON 数据的最佳方式是什么?

【问题讨论】:

  • 您是否尝试过带有 escapeXml=false 的 c:out JSTL 标签
  • 我不确定如何在

标签: json angularjs ng-grid gsp grails-domain-class


【解决方案1】:

感谢 Sridhar 的建议,我开始寻找在 GSP 中取消转义 JSON 的方法,并在这里找到了答案:

how-to-render-json-properly-without-escaping-quotes-inside-a-gsp-script-tag

我需要在我的 GSP 中使用 g:applyCodec 标签:

<g:applyCodec encodeAs="none">
     $scope.gridOptions = ${grid};
</g:applyCodec>

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2015-02-23
  • 1970-01-01
  • 2013-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-06
  • 1970-01-01
相关资源
最近更新 更多