基于另一个日期选择器的选定值时如何为amp-date-picker的[max]日期添加偏移量

时间:2019-05-09 13:29:54

标签: amp-html amp-date-picker

我正在尝试根据另一个amp-date-picker的值设置[最长]日期,但要偏移28天。

我尝试使用event.date(offset=28),但由于我尝试将其应用于日期变量而不是date-picker.today函数,因此收到以下错误。

error.js:205 %s %s amp-bind: Expression eval failed

我还尝试使用amp-bind-macro将偏移量添加到日期,但是该日期被解析为字符串,因此我收到了NaN(在下面的代码示例中)

<!--/* Start date */-->
<amp-date-picker
    type="single"
    layout="container"
    format="YYYY-MM-DD"
    input-selector="[name=startDate]"
    on="
        select:
            AMP.setState({
                binding: {
                    startDate: event.date,
                    maxEndDate: maxEndDateFunc(event.date, 3)
                }
            })">
    <input name="startDate" placeholder="Start date">

</amp-date-picker>

<amp-bind-macro id="maxEndDateFunc" 
    arguments="maxEndDate, maxDays"
    expression="maxEndDate*1+maxDays" />

<!--/* End date */-->
<amp-date-picker
        type="single"
        mode="overlay"
        layout="container"
        format="YYYY-MM-DD"
        input-selector="[name=endDate]"
        [min]="binding.startDate"
        [max]="binding.maxEndDate" 
        on="
            select:
                AMP.setState({
                    binding: {
                        endDate: event.date
                    }
                })">
    <input name="endDate" placeholder="End date">
</amp-date-picker>

当我在开始date-picker上选择2019年5月1日时,我希望它将date-picker的结尾最大值设置为2019年5月28日,偏移时间为n天。

在不使用范围类型的情况下,有什么办法可以做到这一点,因为设置最大夜晚会限制所选的最小和最大日期吗?

0 个答案:

没有答案