2. 已知某人的身份证号”110101200010011234”中, 定义全局过滤器“newShow”,输出“生日:2000年10 月 01 日,年龄:23岁。”在Vue.js中怎么写
时间: 2024-11-23 14:51:08 浏览: 8
在Vue.js中,你可以创建一个全局过滤器来处理这个问题。首先,在项目的`main.js`或其他合适的过滤器文件中定义这个名为`newShow`的过滤器函数。这里是具体的代码示例:
```javascript
// main.js 或 filters.js (假设在一个filters模块里)
Vue.filter('newShow', function(value) {
const id = "110101200010011234";
let birthDate = value.substring(6, 14); // 生日字符串(YYYYMMDD)
let birthMonth = parseInt(birthDate.substring(4, 6), 10);
let birthYear = parseInt(birthDate.substring(0, 4), 10);
let currentYear = new Date().getFullYear();
let age = currentYear - birthYear;
return `生日:${birthYear}年${birthMonth < 10 ? '0' : ''}${birthMonth}月${birthDate.substring(14)}日,年龄: ${age}岁`;
});
```
然后在模板中,你可以直接使用这个过滤器来展示数据:
```html
<p v-bind:title="item.id | newShow"></p>
```
这里假设`item.id`是一个包含身份证号码的数据属性。
阅读全文