AngularJS 插值场景下字符串格式化:如何提取日期字符串中的年份
你调用split('/')后返回的是拆分后的数组,直接取数组第1位(索引为0)的元素即可得到年份,有3种实现方案可选:
方案1:直接在模板取索引(最快适配当前场景)
直接修改对应td的插值表达式即可:
<td>{{dob.fromYear.split('/')[0]}}</td>
方案2:使用AngularJS内置date过滤器(易维护,适配后续日期格式变更)
如果你的日期字符串可以被JS正确识别为有效日期对象,可以直接用AngularJS内置的日期过滤器提取年份:
<td>{{dob.fromYear | date:'yyyy'}}</td>
方案3:自定义过滤器(适合全项目多处复用的场景)
如果项目内有多处需要从同格式日期字符串中提取年份的需求,可以先在模块中注册自定义过滤器:
// 此处app为你声明的AngularJS模块实例 app.filter('getYear', function() { return function (dateStr) { if (!dateStr) return '' return dateStr.split('/')[0] } })
在模板中直接调用过滤器即可:
<td>{{dob.fromYear | getYear}}</td>
内容的提问来源于stack exchange,提问作者kumara
相关产品推荐
相关产品推荐

