mdDialog在模态中显示漂亮的json

时间:2017-07-19 14:51:35

标签: angularjs json modal-dialog

尝试在Angular mdModal中显示美化json ... 这是我的代码:

 testVm.showPopup = function(id, data, ev) {
            var jsonPrettified = JSON.stringify(JSON.parse(data), null, 2);
            $mdDialog.show({
                parent: angular.element(document.body),
                clickOutsideToClose: true,
                template: jsonPrettified
            });
        };

jsonPrettified保存了我想在弹出窗口中看到的精确json结构......

现在......我认为我不能使用模态警报+ .text因为它总是将它呈现为文本并展平我的json结构...... 我需要将此作为div添加到模板中,对吧?

任何帮助表示赞赏。 谢谢。

2 个答案:

答案 0 :(得分:1)

您应该将jsonPrettified放入<pre>标记。它将保存字符串中的所有缩进。

答案 1 :(得分:0)

尝试使用角度'json'过滤器,它更容易。你不需要通过yourselft将你的json对象转换为字符串,angular会为你做。

var myobject = {       “名字”:“丹尼尔”,       “姓氏”:“德尔加多”,       “年龄”:23     };

$mdDialog.show({
    parent: angular.element(document.body),
    clickOutsideToClose: true,                
    locals:{
      _json: myobject // a variable that is going to catched in the controller
    },
    controller: function($scope, _json){
      $scope.myjson = _json;                  
    },
    template: `<pre>
                {{ myjson | json:2 }}
              </pre>`
});