【问题标题】:vue datepicker returns "1969" valuevue datepicker 返回“1969”值
【发布时间】:2020-12-11 07:49:52
【问题描述】:

我已经实现了 vue datepicker 组件,如下链接所示: https://github.com/ReproNim/reproschema-ui/blob/master/src/components/Inputs/YearInput/YearInput.vue

当这个组件被回答并且我移动到另一个页面并重新访问日期选择器所在的这个页面时,该值被修改为“1969”。 在安装的方法(上面链接中的第 53 行)中,我检查任何初始化值。如果存在,则将其分配给数据“输入”。我检查了初始化值,它是正确的(它具有先前回答的值)但在屏幕上组件显示“1969”。

有人可以帮忙解释为什么会这样吗?

【问题讨论】:

  • 这可能是默认(空)日期。 unix 纪元日期是 1970 年 1 月 1 日(格林威治标准时间)。在美国,那是 1969 年 12 月 31 日。
  • 是的。我怎样才能得到我的预期输出而不是默认输出?为什么会出现默认值?

标签: javascript vue.js vuejs2 datepicker vue-component


【解决方案1】:

大部分代码看起来都是正确的。

也许输入值的格式不正确,所以使用了默认的 'epoch'。

或者是您的拼写错误导致了问题...

lang=selected_language:initialView=inputType:minimumView=inputType


    <datepicker placeholder="Select Date" v-model="input" :lang='selected_language'
                :disabledDates="dateParam.disabledDates" :format="customFormatter"
                :minimumView='inputType' :maximumView="'year'" :initialView='inputType'
                ></datepicker>

【讨论】:

  • 抱歉,您所说的拼写错误导致问题是什么意思?我不明白..在我的代码中,selected_language = 'en',inputType = 'year'。所以输入值也是一年,例如。 1980
  • 使用 v-bind 或 : 字符时需要引号
  • 我做了你提到的上述更改,但仍然不起作用。不明白出了什么问题..
  • 第一步是直接在value='your-value'中放一个值。如果显示正确,则在绑定值的分配中放置一个断点。所以用单向赋值替换 v-model。
【解决方案2】:

我终于能够解决这个问题了!

当回答的值为“年”时,例如。 1990 年,在挂载的生命周期挂钩中,在将其分配给数据变量之前,我需要将“年份”值转换为日期对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-11
    • 1970-01-01
    • 2014-10-01
    • 2018-06-11
    • 1970-01-01
    • 1970-01-01
    • 2012-04-21
    • 1970-01-01
    相关资源
    最近更新 更多