【问题标题】:How could I pass a variable into an Ionic datetime input property?如何将变量传递给 Ionic 日期时间输入属性?
【发布时间】:2019-01-29 01:19:35
【问题描述】:

我想将一个变量 someVar 传递给 Ionic 2(和 Angular 2)DateTime 组件的 max 属性(输入属性)。它似乎只接受硬编码的字符串,例如max="2017-08-31".

HTML

<ion-datetime displayFormat="DD/MM/YYYY" max="someVar" [(ngModel)]="toDate"></ion-datetime>

JavaScript

export class myPage {

  public someVar: string = ''; // linked to another user input

  constructor() {}

}

【问题讨论】:

  • 更改max="someVar"public someVar: string = '';

标签: angular ionic2


【解决方案1】:

我假设那是角度 2?您可以将其作为字符串传递,例如:

<ion-datetime displayFormat="DD/MM/YYYY" max="some-var" [(ngModel)]="'fromDate'"></ion-datetime>

注意引号 (')

【讨论】:

  • 是的,Angular 2。问题在于 max 属性,它是 DateTime 组件的输入。我尝试给它传递一个字符串,例如:max="'some-var'" 但这不起作用。
  • 已经很简单了,但是如果示例和代码中的一样,命名约定可能会有问题(应该在 html 中使用 someVar 而不是 some-var)
  • 代码和例子不一样但是很好看,我觉得看起来不对!
【解决方案2】:

虽然我无法将变量传递给 max 属性,但将今天的日期传递给 ngModel 可确保该字段的最大可用日期是当年的 12 月 31 日。

将“To”日期限制在今天会很好,但这不是必需的。

【讨论】:

  • 要将变量传递给 max 属性,请执行此操作 `max="{{ this.maxDate }}" ` 当然,maxDate 是在 .ts 文件中声明的
【解决方案3】:

要将变量传递给 max 属性,请像这样在 {{ }} 中传递它

&lt;ion-datetime #picker pickerFormat="DD MMM YYYY" min="2018" max="{{ this.todayDate }}"&gt;&lt;/ion-datetime&gt;

当然,maxDate 是在 .ts 文件中声明的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多