【问题标题】:Break Array Values Into New Line in Angular在Angular中将数组值分解为新行
【发布时间】:2017-11-13 04:44:14
【问题描述】:

如何将这一系列错误拆分为新行?我尝试使用“\n”,它不会在 Angular 中分成几行?

JSON

{
  "headers": {
    "normalizedNames": {},
    "lazyUpdate": null
  },
  "status": 404,
  "statusText": "Not Found",
  "url": "http://sample.com",
  "ok": false,
  "name": "HttpErrorResponse",
  "message": "Http failure response for http://sample.com: 404 Not Found",
  "error": {
    "error": [
      "Error1",
      "Error2",
      "Error3"
    ]
  }
}

error.ts

error => {
             alert("ERROR" + "\n" +  error.error.error + "\n");    
             console.log(error.error.error);
          });

【问题讨论】:

  • 您是否将结果放在 HTML 中?如果是这样,您需要改用<br>
  • 你试过<br/>吗?你到底在哪里展示这个? \nalerts 工作。
  • @Xufox 而不是<br/> 最好使用<p><span style='display:block'> 之类的元素。
  • 单词“错误中断但error1,error2,error3不中断行
  • @HassanImam。它说 e.join 不是函数

标签: javascript arrays json angular


【解决方案1】:

问题是error.error.error 在一个数组中,而您正在按原样打印它。

试试这个

var error = {
"headers": {
	"normalizedNames": {},
	"lazyUpdate": null
},
"status": 404,
"statusText": "Not Found",
"url": "http://sample.com",
"ok": false,
"name": "HttpErrorResponse",
"message": "Http failure response for http://sample.com: 404 Not Found",
"error": {
	"error": [
	"Error1",
	"Error2",
	"Error3"
	]
}
}
var alertString = 'error ';
for (var i = 0; i < error.error.error.length; i++) {
alertString = alertString + '\n ' + error.error.error[i];
}
alert(alertString);
 console.log(alertString);

【讨论】:

    【解决方案2】:

    在 HTML 页面中显示错误时,您可以使用 array#join()&lt;br&gt; 插入断线。当您想在alert()console 中显示错误时,您可以array#join('\n')

    var error = {"headers":{"normalizedNames":{},"lazyUpdate":null},"status":404,"statusText":"Not Found","url":"http://sample.com","ok":false,"name":"HttpErrorResponse","message":"Http failure response for http://sample.com: 404 Not Found","error":{"error":["Error1","Error2","Error3"]}}
    alert(error.error.error.join('\n'));
    document.write(error.error.error.join('<br>'));

    【讨论】:

      【解决方案3】:

      在组件文件中保持错误并在 HTML 中迭代相同

      TS 文件

      error : any ={
        "headers": {
          "normalizedNames": {},
          "lazyUpdate": null
        },
        "status": 404,
        "statusText": "Not Found",
        "url": "http://sample.com",
        "ok": false,
        "name": "HttpErrorResponse",
        "message": "Http failure response for http://sample.com: 404 Not Found",
        "error": {
          "error": [
            "Error1",
            "Error2",
            "Error3"
          ]
        }
      }
      

      HTML 文件

      <div *ngFor="let err of error.error.error">{{err}}</div>
      

      【讨论】:

        【解决方案4】:

        兄弟,试试这个代码,

        error => {
                     alert("ERROR" + "\n" +  error.error[0] + "\n" +  error.error[1] + "\n" +  error.error[2]);    
                     console.log(error.error);
                  });
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2020-09-13
          • 2022-11-30
          • 2019-12-01
          • 2022-12-02
          • 1970-01-01
          • 1970-01-01
          • 2012-10-11
          相关资源
          最近更新 更多