首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从计算值中循环每月的每一天

如何从计算值中循环每月的每一天
EN

Stack Overflow用户
提问于 2018-04-07 16:54:54
回答 1查看 452关注 0票数 1

我正在创建一个注册表单,用户必须选择出生日期。

我正在浏览一个月的列表和相应的输出日。

代码语言:javascript
运行
复制
let selectedMonth = 'April'

new Vue ({
  el: '#app',
  data: {
    months: [
      {month: 'January', days: 31},
      {month: 'February', days: 28},
      {month: 'March', days: 31},
      {month: 'April', days: 30},
      {month: 'May', days: 31},
      {month: 'June', days: 30},
      {month: 'July', days: 31},
      {month: 'August', days: 31},
      {month: 'September', days: 30},
      {month: 'October', days: 31},
      {month: 'November', days: 30},
      {month: 'December', days: 31},
    ]
  },
  computed: {
    filterDays() {
      return this.months.filter(function(value) {
        return value.month === selectedMonth;
      });
    }
  },
});
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.min.js"></script>  

<div id = "app">
  <select id="dob">
    <option v-for="day in filterDays" :value="day.days">{{ day.days }}</option>
  </select>
</div>

上面的程序只是输出<option value = "30">30</option>,而不是循环day in 30

EN

Stack Overflow用户

回答已采纳

发布于 2018-04-07 17:00:01

filterDays返回一个月份对象集合。如果要对一个数字进行循环,请使用它作为循环源:filterDays[0].days

代码语言:javascript
运行
复制
<option v-for="day in filterDays[0].days" :value="day">{{ day }}</option>

或者通过返回计算的天数来修复计算的函数。

代码语言:javascript
运行
复制
computed: {
  filterDays() {
    // Select the first item here.
    const month = this.months.filter(value => value.month === selectedMonth)[0];

    // If the month was found, return its days, otherwise, undefined.
    return month && month.days;
  }
},
票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49709745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档