javascript - AngularJS 格式 JSON 字符串输出

我有一个 AngularJS 应用程序,它从输入中收集数据,使用 JSON.stringify() 将模型转换为字符串并让用户以这样一种方式编辑此模型:如果 <textarea>元素被更新,反之亦然。某种双向绑定(bind):)

问题是字符串本身看起来很丑,我想把它格式化成这样:

现在看起来不像:

任何想法如何实现?如果您需要一些额外的信息 - 不要犹豫询问。每个答案都受到高度赞赏并立即得到答复。

谢谢。

附:我想这应该是某种指令或自定义过滤器。数据本身不应该改变,只有输出。

最佳答案

Angular 有一个内置的 filter 用于显示 JSON

<pre>{{data | json}}</pre>

注意使用 pre-标签来节省空格和换行符

演示:

angular.module('app', [])
  .controller('Ctrl', ['$scope',
    function($scope) {

      $scope.data = {
        a: 1,
        b: 2,
        c: {
          d: "3"
        },
      };

    }
  ]);
<!DOCTYPE html>
<html ng-app="app">

  <head>
    <script data-require="angular.js@1.2.15" data-semver="1.2.15" src="//code.angularjs.org/1.2.15/angular.js"></script>
  </head>

  <body ng-controller="Ctrl">
    <pre>{{data | json}}</pre>
  </body>

</html>

还有一个 angular.toJson 方法,但我没玩过(Docs)

https://stackoverflow.com/questions/22785552/

相关文章:

python - Pandas :设置编号。最大行数

html - 是否可以在 Dreamweaver 中自动格式化您的代码?

java - 生成用空格填充的固定长度字符串

javascript - 在jQuery中将逗号添加到数字

vim - 如何让 Vim 的 `J` 和 `gq` 命令在一段时间后使用一个空格?

java - Intellij 代码格式化,Java 新行注解

python - 使用标准 json 模块格式化 float

Excel CSV - 数字单元格格式

java - 如何打印格式化的 BigDecimal 值?

html - Bootstrap 3.0 : How to have text and input