<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        vue 中filter的多種用法

        來源:懂視網 責編:小采 時間:2020-11-27 22:15:36
        文檔

        vue 中filter的多種用法

        vue 中filter的多種用法:1、自定義的過濾器,當然這包括注冊在全局和注冊在實例化的內部 (1)注冊在全局的fliter (1)全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面 (2) 過濾器函數始終以表達式的值作為第一個參數。帶引號的參數視為字符串,而不帶引號的參
        推薦度:
        導讀vue 中filter的多種用法:1、自定義的過濾器,當然這包括注冊在全局和注冊在實例化的內部 (1)注冊在全局的fliter (1)全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面 (2) 過濾器函數始終以表達式的值作為第一個參數。帶引號的參數視為字符串,而不帶引號的參

        1、自定義的過濾器,當然這包括注冊在全局和注冊在實例化的內部

        (1)注冊在全局的fliter

        (1)全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面

        (2) 過濾器函數始終以表達式的值作為第一個參數。帶引號的參數視為字符串,而不帶引號的參數按表達式計算

        (3)可以設置兩個過濾器參數,前提是這兩個過濾器處理的不沖突

        (4)用戶從input輸入的數據在回傳到model之前也可以先處理

        <!DOCTYPE html>
        <html>
         <head>
         <meta charset="UTF-8">
         <title>vue自定義過濾器</title>
         <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
         <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
         </head>
         <body>
         <div class="test">
         <p>{{message | sum}}</p>
         <p>{{message | cal 10 20}}</p> <!--過濾器函數始終以表達式的值作為第一個參數。帶引號的參數視為字符串,而不帶引號的參數按表達式計算。-->
         <p>{{message | sum | currency }}</p> <!--添加兩個過濾器,注意不要沖突-->
         <input type="text" v-model="message | change"> <!--用戶從input輸入的數據在回傳到model之前也可以先處理-->
         </div>
         <script type="text/javascript">
        // -----------------------------------------華麗分割線(從model->view)---------------------------------------
         Vue.filter("sum", function(value) { //全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面
         return value + 4;
         });
         Vue.filter('cal', function (value, begin, xing) { //全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面
         return value + begin + xing;
         });
        // -----------------------------------------華麗分割線(從view->model)---------------------------------------
         Vue.filter("change", {
         read: function (value) { // model -> view 在更新 `<input>` 元素之前格式化值
         return value;
         },
         write: function (newVal,oldVal) { // view -> model 在寫回數據之前格式化值
         console.log("newVal:"+newVal); 
         console.log("oldVal:"+oldVal);
         return newVal;
         }
         });
         var myVue = new Vue({
         el: ".test",
         data: {
         message:12
         }
         });
         </script>
         </body>
        </html>

        filter是默認會傳入當前的item,而且filter的第一個參數默認就是當前的item。

        (2)注冊在實例化內部

        上面的例子直接注冊在Vue全局上面,其他不用這個過濾器的實例也會被迫接受,其實過濾器可以注冊在實例內部,僅在使用它的實例里面注冊

         上面的程序改寫為:

        <!DOCTYPE html>
        <html>
         <head>
         <meta charset="UTF-8">
         <title>vue自定義過濾器</title>
         <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
         <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
         </head>
         <body>
         <div class="test">
         <p>{{message | sum}}</p>
         <p>{{message | cal 10 20}}</p> <!--過濾器函數始終以表達式的值作為第一個參數。帶引號的參數視為字符串,而不帶引號的參數按表達式計算。-->
         <p>{{message | sum | currency }}</p> <!--添加兩個過濾器,注意不要沖突-->
         <input type="text" v-model="message | change"> <!--用戶從input輸入的數據在回傳到model之前也可以先處理-->
         </div>
         <script type="text/javascript">
         Vue.filter("change", {
         read: function (value) { // model -> view 在更新 `<input>` 元素之前格式化值
         return value;
         },
         write: function (newVal,oldVal) { // view -> model 在寫回數據之前格式化值
         console.log("newVal:"+newVal); 
         console.log("oldVal:"+oldVal);
         return newVal;
         }
         });
         var myVue = new Vue({
         el: ".test",
         data: {
         message:12
         },
         filters: {
         sum: function (value) {
         return value + 4;
         },
         cal: function (value, begin, xing) {
         return value + begin + xing;
         }
         }
         });
         </script>
         </body>
        </html>

        2、使用js中的迭代函數filter

        這里寫圖片描述 

        (1)實例一原文

        var app5 = new Vue({
         el: '#app5',
         data: {
         shoppingList: [
         "Milk", "Donuts", "Cookies", "Chocolate", "Peanut Butter", "Pepto Bismol", "Pepto Bismol (Chocolate flavor)", "Pepto Bismol (Cookie flavor)"
         ],
         key: ""
         },
         computed: {
         filterShoppingList: function () {
         // `this` points to the vm instance
         var key = this.key;
         var shoppingList = this.shoppingList;
         //在使用filter時需要注意的是,前面調用的是需要使用filter的數組,而給filter函數傳入的是數組中的每個item,也就是說filter里面的函數,是每個item要去做的,并將每個結果返回。
         return shoppingList.filter(function (item) {
         return item.toLowerCase().indexOf(key.toLowerCase()) != -1
         });;
         }
         }
        })
        
         <ul>
         Filter Key<input type="text" v-model="key"> 
         <li v-for="item in filterShoppingList">
         {{ item }}
         </li>
         </ul> 

        最終效果實現了根據關鍵字來過濾列表的功能。

        這里寫圖片描述 

         其他的一些Js 迭代方法——filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()

        總結

        以上所述是小編給大家介紹的vue 中filter的多種用法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        vue 中filter的多種用法

        vue 中filter的多種用法:1、自定義的過濾器,當然這包括注冊在全局和注冊在實例化的內部 (1)注冊在全局的fliter (1)全局方法 Vue.filter() 注冊一個自定義過濾器,必須放在Vue實例化前面 (2) 過濾器函數始終以表達式的值作為第一個參數。帶引號的參數視為字符串,而不帶引號的參
        推薦度:
        標簽: 使用 VUE 用法
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲激情视频网站| 久久亚洲精品无码| 亚洲av综合日韩| 成人激情免费视频| 亚洲av无码偷拍在线观看| 插B内射18免费视频| 亚洲欧美国产日韩av野草社区| 国产成人免费网站| 亚洲精品无码专区在线| 国产一区二区三区免费视频| 国产精品国产亚洲区艳妇糸列短篇| 国内大片在线免费看| 精品免费AV一区二区三区| 亚洲精品第一国产综合境外资源 | 日韩在线播放全免费| 91亚洲国产成人久久精品| 在线观看免费亚洲| 欧洲美女大片免费播放器视频| 国产亚洲精品不卡在线| 秋霞人成在线观看免费视频| 亚洲宅男天堂a在线| 在线视频免费国产成人| 成全视成人免费观看在线看| 亚洲黑人嫩小videos| 日韩免费视频观看| 你懂得的在线观看免费视频| 亚洲精品成人网站在线播放| 免费a级毛片高清视频不卡| 粉色视频成年免费人15次| 久久亚洲国产欧洲精品一| 最近免费中文字幕4| 四虎影视久久久免费| 亚洲第一页在线观看| 国产美女无遮挡免费视频网站| a毛片免费在线观看| 中文字幕 亚洲 有码 在线| 亚洲精品无码专区2| 最近免费视频中文字幕大全| 无码亚洲成a人在线观看| 亚洲AV色香蕉一区二区| 国产色婷婷精品免费视频|