Vue - 打印数组

edi*_*ica 3 javascript json vue.js vue-component vuejs2

我有这个模型files,我有一个属性,response里面有一个数组errorMessages,在我的 Vue 组件中,我想一一显示错误,而不是数组格式。

有什么办法吗?

    {
  "files": [
    {
      "fileObject": true,
      "size": 9387,
      "name": "file_4444.pdf",
      "type": "application/pdf",
      "active": false,
      "error": true,
      "success": true,
      "postAction": "http://localhost:8000/api/v1/car/upload",
      "timeout": 0,
      "file": {},
      "el": {
        "__vue__": null
      },
      "response": {
        "uploadDone": 0,
        "uploadFail": 1,
        "errorMessages": [
          "User not found",
          "Car not found",
        ]
      },
      "progress": "100.00",
      "speed": 9591,
      "data": {},
      "headers": {},
      "id": "096vnj6rov9t",
      "xhr": {}
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

<template>
  <div class="example-drag">
    <div class="upload">
      <ul v-if="files.length">
        <li v-for="(file, index) in files" :key="file.id">
          <span>{{file.name}}</span> -
          <span v-if="file.error"> {{ file.response.errorMessages }} <md-icon>thumb_down</md-icon> </span>
          <span v-else-if="file.success">success <md-icon>thumb_up</md-icon> </span>
          <span v-else-if="file.active">active <md-icon>thumb_up</md-icon> </span>
          <span v-else>  ... </span>

        </li>
      </ul>
   ...
</template>
Run Code Online (Sandbox Code Playgroud)

Dob*_*leL 5

您需要遍历 errorMessages 数组

<ul v-if="files.length">
  <li v-for="(file, index) in files" :key="file.id">
    <span>{{file.name}}</span> -
    <span v-if="file.error"> 
      <ol>
       <li v-for="err in file.response.errorMessages> {{ err }} </li>
      </ol>
    </span>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

或者使用.join数组的方法( ['hola', 'mundo'].join(", ") => 'hola, mundo')

<span v-if="file.error">{{ file.response.errorMessages.join(", ") }}</span>
Run Code Online (Sandbox Code Playgroud)