Vue-23、Vue过滤器

1、效果

2、过滤器实现

javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>过滤器</title>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script type="text/javascript" src="./js/dayjs.min.js"></script>
    <style>

    </style>
</head>
<body>
<div id="root">
    <h1>显示格式化后的时间</h1>
    <!---->
    <h2>现在是:{{time| timeFormater}}</h2>


</div>
<script type="text/javascript">
    Vue.config.productionTip=false;
    new Vue({
        el:"#root",
        data:{
            time:1705392226413,
        },
        filters:{
            timeFormater(value){
                console.log(value);
                return dayjs(value).format('YYYY年MM月DD日 HH:mm:ss')
            }
        }

    })
</script>
</body>
</html>

3、过滤器传参

javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>过滤器</title>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script type="text/javascript" src="./js/dayjs.min.js"></script>
    <style>

    </style>
</head>
<body>
<div id="root">
    <h1>显示格式化后的时间</h1>
    <!--过滤器实现-->
    <h2>现在是:{{time| timeFormater}}</h2>
    <!--过滤器实现传参-->
    <h2>现在是:{{time| timeFormater2('YYYY-MM-DD')}}</h2>
</div>
<script type="text/javascript">
    Vue.config.productionTip=false;
    new Vue({
        el:"#root",
        data:{
            time:1705392226413,
        },
        filters:{
            timeFormater(value){
                console.log(value);
                return dayjs(value).format('YYYY年MM月DD日 HH:mm:ss')
            },

            timeFormater2(value,str){
                return dayjs(value).format(str)
            }
            
            
        }

    })
</script>
</body>
</html>

3、多个过滤器

javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>过滤器</title>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script type="text/javascript" src="./js/dayjs.min.js"></script>
    <style>

    </style>
</head>
<body>
<div id="root">
    <h1>显示格式化后的时间</h1>
    <!--过滤器实现-->
    <h2>现在是:{{time| timeFormater}}</h2>
    <!--过滤器实现传参-->
    <h2>现在是:{{time| timeFormater2('YYYY-MM-DD')}}</h2>

    <!--多个过滤器-->
    <h2>现在是:{{time| timeFormater | timeFormater3}}</h2>

</div>
<script type="text/javascript">
    Vue.config.productionTip=false;
    new Vue({
        el:"#root",
        data:{
            time:1705392226413,
        },
        filters:{
            timeFormater(value){
                console.log(value);
                return dayjs(value).format('YYYY年MM月DD日 HH:mm:ss')
            },

            timeFormater2(value,str){
                return dayjs(value).format(str)
            },

            timeFormater3(value){
                return value.slice(0,4)
            }
        }

    })
</script>
</body>
</html>

4、全局过滤器

javascript 复制代码
Vue.filter('myFileter',function (value) {
        return value.slice(0,4)
    });

总结:

相关推荐
Bl_a_ck3 分钟前
开发环境(Development Environment)
开发语言·前端·javascript·typescript·ecmascript
田本初16 分钟前
使用vite重构vue-cli的vue3项目
前端·vue.js·重构
ai产品老杨24 分钟前
AI赋能安全生产,推进数智化转型的智慧油站开源了。
前端·javascript·vue.js·人工智能·ecmascript
帮帮志30 分钟前
vue实现与后台springboot传递数据【传值/取值 Axios 】
前端·vue.js·spring boot
xixingzhe243 分钟前
Nginx 配置多个监听端口
服务器·前端·nginx
程序员Bears1 小时前
从零打造个人博客静态页面与TodoList应用:前端开发实战指南
java·javascript·css·html5
清风细雨_林木木2 小时前
Vue 2 项目中配置 Tailwind CSS 和 Font Awesome 的最佳实践
前端·css·vue.js
逊嘘2 小时前
【Web前端开发】CSS基础
前端·css
小宁爱Python2 小时前
深入掌握CSS Flex布局:从原理到实战
前端·javascript·css
Attacking-Coder2 小时前
前端面试宝典---webpack面试题
前端·面试·webpack