angular - ngClass 布尔表达式获取模板解析错误
问题描述
我想检查一个时刻日期是否是当天。这不起作用,我不确定为什么会出现此错误。我认为错误是因为 Angular。
<div class="timeline-date"
*ngFor="let date of dates"
[ngClass]="{'current-date': date.isSame(new Date(), 'day') }">
{{date.format("MMM Do")}}
</div>
错误:
未捕获的错误:模板解析错误:解析器错误:缺少预期)在 [{'current-date': date.isSame(new Date(), 'day') }] 中的第 34 列
解决方案
这可能是该isSame
方法的原因。声明一个布尔变量,这将是这个方法的结果:
isSame: boolean;
// ...
isDateSame = date.isSame(new Date(), 'day');
并使用布尔值ngClass
:
<div class="timeline-date"
*ngFor="let date of dates"
[ngClass]="current-date: isSame">
{{date.format("MMM Do")}}
</div>
编辑:如何正确使用moment.js
角度:
安装它
npm
npm install --save moment
将其导入
.ts
文件中:import * as moment from 'moment';
像这样使用它:
let myMoment: moment.Moment = moment("someDate");
推荐阅读
- sql - 在雅典娜中将字符串拆分为特定最大长度的不同列
- sql - Presto如何找到给定周的开始日期
- amazon-web-services - 如何在安全组中添加 source_security_group_id?
- javascript - 关于 ReactJS 中的 LifeCycles / 代码片段中的问题
- java - openssl der 文件导入到 java 密钥库
- docker - 尝试在 docker 上设置牧场主
- python - 覆盖构建工具没有分析选项。缺少“cov-analyze”
- android - 匕首和黄油刀
- json - 如何在外部化字符串数组时使用 TranslateService [Angular]
- javascript - 为什么github上的nodejs包与npm commit下载的同一个包有差异?