如何循环遍历二维数组以在页面上显示数据?

Posted

技术标签:

【中文标题】如何循环遍历二维数组以在页面上显示数据?【英文标题】:How to loop through 2-d array to display data on page? 【发布时间】:2021-11-13 08:15:10 【问题描述】:

这个 API 返回一个像这样的二维数组

我想使用这些值来迭代并像这样显示在我的页面上

我查看了vue 文档,但列表渲染不起作用。有什么办法可以用v-for 或任何其他方法做到这一点?

【问题讨论】:

您能否展示一下您的code 以及您到目前为止所做的尝试。 【参考方案1】:

如果我理解正确,请尝试如下 sn-p :

new Vue(
  el: '#demo',
  data()
    return 
      sections: [
        [699962583, 'Sep 17'],
        [12665354, 'Sep 17'],
        [739845240, 'Sep 17']
      ]
    
  ,
  computed: 
    currentPrize()
      // put logic to get current prize
      return 6543210
    
  
)
ul 
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 300px;

li, .heading 
  display: flex;
  align-items: center;
  justify-content: space-between;

h1, h3, h5 
  margin: 0;
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="demo">
  <ul>
    <h1>Past Prizes</h1>
    <div class="heading">
      <h5>Current prizes</h5><h3>$  currentPrize </h3>
    </div>
    <li v-for="(section, index) in sections" :key="index">
      <h5> section[1] </h5><span>$  section[0] </span>
    </li>
  </ul>
</div>

【讨论】:

【参考方案2】:

有两种方式:

一种是将数组转换为对象数组并迭代为v-for和value.date和value.price in v-for="value in array"

[
 date: 'dd//mm/yy',
 price: 3242,
]

其他是像这样使用数组,以数组中的元素应该]恒定的方式编写,其中 value[0] 是您的价格 ad value[1] 是您的日期。

  <div v-for="value in array">
    value[0]     value[1]
  </div>

【讨论】:

【参考方案3】:

您可以简单地通过循环并破坏v-for 指令中的子数组来实现。请参考以下示例:

Vue.config.productionTip = false
Vue.config.devtools = false

new Vue(
  el: '#app',
  data() 
    return 
      sections: [
        [699962583, 'Sep 17'],
        [12665354, 'Sep 17'],
        [739845240, 'Sep 17']
      ]
    
  ,
  computed: 
    currentPrize() 
      return this.sections.reduce(function(prev, current) return prev += current[0]; , 0);
    
  
)
ul 
  list-style-type: none;
  width: 400px;


li 
  display: flex;
  align-items: center;
  justify-content: space-between;
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
  <h1>Past Prizes</h1>
  <ul>
    <li><span>Current prizes</span><span>$ currentPrize </span></li>
    <li v-for="([prize, date], index) in sections" :key="index">
      <span> date </span> <span>$ prize </span>
    </li>
  </ul>
</div>

【讨论】:

以上是关于如何循环遍历二维数组以在页面上显示数据?的主要内容,如果未能解决你的问题,请参考以下文章

怎么用一个循环遍历二维数组?

java使用foreach语句遍历二维数组如何实现?

php中foreach循环遍历二维数组

C语言,怎么利用一个循环遍历一个二维数组呀?急!!!

for循环二维数组的取值方式?

c++中用for循环对二维数组赋值可以吗,就是自己手动输入数据