如何使用 Vue3 编辑 v-for 循环中的每个数组元素?

How do I edit each individual array element in v-for loop with Vue3?

基本上我有这个日历行,每个元素都有日期信息:

我试图停止单个数据的循环,以便每个日历项目都有自己的当前和未来几天的数据。

第一个日历元素应始终显示当前日期,其余项为剩余天数

模板

<template>
<div class="wrapper">
  <div class="calendar-wrapper">
      <div class="calendar-row"
           v-for="(day, idx) in dayArr"
           :key="idx"
        >
          <div
            id="card"
            class="day-card unactive"
            @click="test(idx)"
          > 
              <div class="card-info">
                <p class="name">{{ dayOfWeek }}</p>
                <p class="day">
                    {{ currDay }} 
                </p>
              </div>
             <div class="dot-wrapper">
                <div class="dot-status undone" />
                <div class="dot-status undone" />
             </div>
          </div>

      </div>
  </div>
</div>
</template>

脚本


 setup() {
        const moment = require('moment')
        const m = moment

        // Get the remaining month days starting from today:
        const daysRemainingThisMonth = moment().endOf('month').diff(moment(), 'days');

        // Turn the remaining days into an array for future rendering in the Template
        let dayArr = Array(daysRemainingThisMonth)
    
        // Get the index of a clicked calendar item:
        const test = (idx) => {
            console.log(idx + 1);
        }

        // Get the current day:
        const currDay = m().format('D')
        // Get the current week day:
        const dayOfWeek = m().format('dddd')
}

我相信有一种方法可以以某种方式访问​​每个日历元素并为其提供自己的数据,但我不知道如何实现

我已经使用 moment 功能更改了您的代码,它在 this link 中正确显示。

如您所见,我使用 moment().add(<countingOfDiffrenceFromToday>, 'day') 到达确切的日期并将其推送到数组并在 v-for 循环中使用它。