精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

vue開發必須知道的九大秘法

開發
近年來,vue越來越火,使用它的人也越來越多。vue基本用法很容易上手,但是還有很多優化的寫法你就不一定知道了。本文列舉了一些vue常用的開發技巧。

[[345880]]

 require.context()
在實際開發中,絕大部分人都是以組件化的方式進行開發。隨之而來就有了許多的組件需要引入。比如以下場景:

  1. import outExperInfo from "@/components/userInfo/outExperInfo"
  2. import baseUserInfo from "@/components/userInfo/baseUserInfo"
  3. import technicalExperInfo from "@/components/userInfo/technicalExperInfo"
  4. import skillExperInfo from "@/components/userInfo/skillExperInfo"
  5.  
  6. components:{ 
  7.     outExperInfo, 
  8.     baseUserInfo, 
  9.     technicalExperInfo, 
  10.     skillExperInfo 

這樣寫并沒有錯,但是仔細觀察發現寫了很多重復的代碼,這個時候利用require.context()可以寫成:

  1. const path = require('path'
  2. const files = require.context('@/components/userInfo'false, /\.vue$/) 
  3. const userComponents = {} 
  4. files.keys().forEach(key => { 
  5.  const name = path.basename(key'.vue'
  6.  userComponents[name] = files(key).default || files(key
  7. }) 
  8. components:userComponents 

這樣不管需要引入多少組件,都可以使用這一個方法。

路由的按需加載
隨著項目功能模塊的增加,引入的文件數量劇增。如果不做任何處理,那么首屏加載會相當的緩慢,這個時候,路由按需加載就閃亮登場了。

  1. webpack< 2.4 時 
  2.  path:'/'
  3.  name:'home'
  4.  components:resolve=>require(['@/components/home'],resolve) 
  5.   
  6. webpack> 2.4 時 
  7.  path:'/'
  8.  name:'home'
  9.  components:()=>import('@/components/home'

import()方法是由es6提出的,動態加載返回一個Promise對象,then方法的參數是加載到的模塊。類似于Node.js的require方法,主要import()方法是異步加載的。

動態組件
場景:如果項目中有tab切換的需求,那么就會涉及到組件動態加載,一般寫法如下:

  1. <component v-bind:is="currentTab"></component> 

這樣寫也沒有錯,但是如果這樣寫的話,每次切換的時候,當前組件都會銷毀并且重新加載下一個組件。會消耗大量的性能,所以就起到了作用。

  1. <keep-alive> 
  2.  <component v-bind:is="currentTab"></component> 
  3. </keep-alive> 

有的小伙伴會說,這樣切換雖然不消耗性能了,但是切換效果沒有動畫效果了,別著急,這時可以利用內置的。

  1. <transition> 
  2. <keep-alive> 
  3.  <component v-bind:is="currentTab"></component> 
  4. </keep-alive> 
  5. </transition> 

components和vue.component
前者是局部注冊組件,用法如下:

  1. export default
  2.  components:{home} 

后者是全局注冊組件,主要針對一些全局使用的組件,用法如下:

  1. Vue.component('home',home) 

Vue.nextTick
Vue.nextTick()方法在下次DOM更新循環結束之后執行延遲回調,因此可以頁面更新加載完畢之后再執行回調函數。下面介紹幾個常用場景:

場景一

  1. <template> 
  2.     <div> 
  3.         <div ref = "ref"/> 
  4.     </div> 
  5. </template> 
  6. <script> 
  7. export default { 
  8.     created(){ 
  9.         console.log(this.$refs.ref) 
  10.         //undefined 
  11.     }) 
  12. </script> 

因為這個時候created階段dom并未完全渲染完成,所以獲取值為undefined,我們對其改造一下:

  1. <template> 
  2.     <div> 
  3.         <div ref = "ref"/> 
  4.     </div> 
  5. </template> 
  6. <script> 
  7. export default { 
  8.     created(){ 
  9.         Vue.nextTick(()=>{ 
  10.             console.log(this.$refs.ref) 
  11.         }) 
  12.         //<div></div> 
  13.          
  14.     }) 
  15. </script> 

這樣就可以獲取到dom了。

場景二

  1. <template> 
  2.     <div> 
  3.         <div v-if="visible" ref = "ref"/> 
  4.     </div> 
  5. </template> 
  6. <script> 
  7. export default { 
  8.     data() { 
  9.         return { 
  10.           visible: false 
  11.         }; 
  12.     }, 
  13.     showRef() { 
  14.         this.visible = true
  15.         console.log(this.$refs.ref); 
  16.         //undefined 
  17.     }, 
  18. </script> 

因為這個時候雖然visible的值為true,但是頁面dom并沒有更新完成,所以獲取值為undefined,我們對其改造一下:

  1. <template> 
  2.     <div> 
  3.         <div v-if="visible" ref = "ref"/> 
  4.     </div> 
  5. </template> 
  6. <script> 
  7. export default { 
  8.     data() { 
  9.         return { 
  10.           visible: false 
  11.         }; 
  12.     }, 
  13.     showRef() { 
  14.         this.visible = true
  15.         Vue.nextTick(()=>{ 
  16.             console.log(this.$refs.ref) 
  17.         }) 
  18.         //<div></div> 
  19.     }, 
  20. </script> 

這樣就可以獲取到dom了。

Vue.directive
場景:官方給我們提供了很多指令,但是我們如果想將文字變成指定的顏色定義成指令使用,這個時候就需要用到Vue.directive,示例如下:

  1. // 全局定義 
  2. Vue.directive("change-color",function(el,binding,vnode){ 
  3.  el.style["color"]= binding.value; 
  4. }) 
  5.   
  6. // 使用 
  7. <template> 
  8.     <div v-change-color>{{message}} 
  9.     </div> 
  10. </template> 
  11. <script> 
  12.  export default
  13.      data(){ 
  14.       return
  15.       color:'green' 
  16.       } 
  17.      } 
  18.  } 
  19. </script> 

Vue.set()
當在項目中直接設置數組的某一項的值,或者直接設置對象的某個屬性值,這個時候,你會發現頁面并沒有更新。這是因為Object.defineprototype()限制,監聽不到變化,具體的可以查看我的另一篇文章:

vue對象數組數據變化,頁面不渲染

事件修飾符

  • .stop:阻止冒泡
  • .prevent:阻止默認行為
  • .self:僅綁定元素自身觸發
  • .once: 2.1.4 新增,只觸發一次
  • passive: 2.3.0 新增,滾動事件的默認行為 (即滾動行為) 將會立即觸發,不能和.prevent 一起使用
  • .sync 修飾符

從 2.3.0 起vue重新引入了 .sync 修飾符,但是這次它只是作為一個編譯時的語法糖存在。它會被擴展為一個自動更新父組件屬性的 v-on 監聽器。示例代碼如下:

  1. <comp :foo.sync="bar"></comp> 

會被擴展為:

  1. <comp :foo="bar" @update:foo="val => bar = val"></comp> 

當子組件需要更新 foo 的值時,它需要顯式地觸發一個更新事件:

  1. this.$emit('update:foo', newValue) 

長列表性能優化(數據凍結)
眾所周知,vue會通過object.defineProperty對數據進行劫持,進而實現頁面實時相應數據的變化,然而我們有些時候,需要的僅僅就是純粹的展示數據,因為數據不會有任何改變,我們就不需要vue來劫持我們的數據。在數據量很大的情況下,這可以很明顯的減少加載時間。

那么如何實現禁止vue劫持我們的數據尼?可以通過object.freeze方法來凍結數據,凍結之后數據也就不能再修改了。示例如下:

  1. let longList = [ 
  2.     {name:'monkeysoft'}, 
  3.     ... 
  4. this.longList = Object.freeze(longList) 

 

責任編輯:姜華 來源: 猴哥說前端
相關推薦

2017-10-17 15:18:58

綜合布線網絡

2018-04-08 10:08:43

開發人員工具

2023-12-21 14:43:30

Python字典

2010-04-12 14:58:56

Meego開發

2021-01-21 22:07:15

Web開發人工智能

2021-01-15 12:30:07

Vue技巧前端

2017-04-17 21:33:01

前端開發javascript嚴格模式

2012-06-27 09:36:37

軟件開發軟件開發

2015-04-15 10:50:06

綜合布線

2021-07-29 08:13:05

高并發秒殺商品秒殺系統

2025-06-20 00:00:00

大模型AISpring

2020-07-09 07:34:40

開發Web工具

2017-09-25 16:22:04

App

2014-09-01 09:53:50

Android框架

2021-02-05 11:21:54

大數據大數據技術

2021-01-29 10:07:31

大數據大數據技術

2012-09-29 10:29:56

.Net內存分配繼承

2012-09-29 09:22:24

.NETGC內存分配

2017-12-07 15:28:36

2020-12-29 09:50:23

大數據大數據技術
點贊
收藏

51CTO技術棧公眾號

日本在线xxx| 国产传媒一区二区三区| 久久精品国产亚洲av久| 成人日韩在线| 国产精品国产三级国产a| 成人免费视频网| 欧美黑人猛猛猛| 欧美黄色录像| 欧美三片在线视频观看| 日韩人妻精品一区二区三区| 欧美自拍第一页| 久久久噜噜噜久久狠狠50岁| 日韩亚洲欧美成人| 伊人久久一区二区三区| 欧美日韩美女| 亚洲精品久久久久久国产精华液| 韩国一区二区三区美女美女秀| 岛国av中文字幕| 亚洲国产精品久久久久蝴蝶传媒| 精品99久久久久久| www.涩涩涩| heyzo在线| 国产精品素人视频| 国产精品对白一区二区三区| av片免费观看| 亚洲午夜91| 日韩在线免费观看视频| 中出视频在线观看| 日韩成人18| 在线视频国产一区| 欧美不卡在线播放| 精产国品自在线www| 久久你懂得1024| 91九色偷拍| 亚洲图片视频小说| 国产精品亚洲产品| 欧美国产乱视频| 能直接看的av| 神马久久影院| 精品国产精品网麻豆系列| 99热这里只有精品在线播放| 性欧美xxx69hd高清| 一区二区视频在线看| 一区二区在线高清视频| 国产黄色片在线观看| 波多野结衣在线一区| 91在线免费视频| 在线观看国产小视频| 嫩草成人www欧美| 97视频色精品| 国产中文字字幕乱码无限| 一区二区日韩欧美| 久久中文字幕在线| 青青操在线播放| 精品国产一区二区三区| 亚洲美女久久久| 艳妇乳肉亭妇荡乳av| 在线精品国产亚洲| 日韩欧美国产高清| 亚洲欧美激情一区二区三区| 成人精品视频在线观看| 欧美日韩免费高清一区色橹橹| 国产第一页视频| 在线毛片观看| 欧美日韩精品在线播放| 91成人在线观看喷潮教学| 欧美亚洲系列| 亚洲国产精品久久久久秋霞影院| 日韩精品在线视频免费观看| 69av成人| 疯狂做受xxxx欧美肥白少妇| 中国丰满人妻videoshd | 草民午夜欧美限制a级福利片| 中文字幕第二区| 久久精品99久久无色码中文字幕| 在线看国产精品| 青青草华人在线视频| 欧美第一精品| 欧美成人精品三级在线观看| 日韩一区二区三区四区在线| 韩国av一区| 高清一区二区三区四区五区| 欧美三级午夜理伦| 久久久久久穴| 国产欧美一区二区三区视频 | 91视频88av| 亚洲av少妇一区二区在线观看| 处破女av一区二区| 久草一区二区| 丁香婷婷在线| 亚洲日本一区二区三区| 97在线国产视频| 欧美电影免费观看高清完整| 欧美日韩在线播放三区四区| 九九热视频免费| 国产精品视频3p| 国产香蕉精品视频一区二区三区| 欧美aaa级片| 国产精品hd| 欧美一级电影在线| 国产精品福利电影| 99久久精品免费观看| 日韩资源av在线| 久cao在线| 精品国产户外野外| 怡红院亚洲色图| 国产精品对白久久久久粗| 亚洲网址你懂得| 黄色在线观看免费| 日韩成人午夜精品| 国产精品免费在线播放| 成人午夜电影在线观看| 亚洲国产视频一区| 久久国产精品国产精品| 林ゆな中文字幕一区二区| 中文字幕日韩在线观看| 欧美一二三区视频| 国内精品伊人久久久久影院对白| 久久国产精品一区二区三区四区| 久操视频在线播放| 在线观看国产精品网站| 精品人妻一区二区三区日产| 91久久夜色精品国产按摩| 456国产精品| 国产av精国产传媒| 中文字幕av一区二区三区| 国产精品无码人妻一区二区在线| 国产成年精品| 在线亚洲欧美视频| 日本午夜视频在线观看| 国产福利一区在线| 中文字幕免费在线不卡| 日韩三区在线| 日韩理论片久久| 国产性猛交普通话对白| 久久电影网站中文字幕| 欧美一区二区三区四区在线观看地址 | 91精品网站| 黄色片网站在线观看| 在线亚洲欧美专区二区| 一起草在线视频| 亚洲性人人天天夜夜摸| 亚洲一区二区三区777| 91大神在线网站| 欧美午夜精品久久久久久浪潮| 免费黄色a级片| 亚洲欧美文学| 亚洲自拍在线观看| 综合久久2019| 欧美一二三在线| 国产盗摄一区二区三区在线| 精品一区二区三区久久| 伊人久久青草| 亚洲人成网站在线在线观看| 中文字幕亚洲激情| 中文字幕第2页| 亚洲国产精品成人综合| 国产自偷自偷免费一区| 欧美精品尤物在线观看| 国产精品成人免费电影| 成人精品一区二区三区校园激情 | 中文字幕亚洲图片| 亚洲永久精品一区| 中文字幕欧美区| 国产又黄又猛的视频| 婷婷丁香综合| 亚洲一区中文字幕| 青青在线视频| 亚洲黄色在线看| 国产精品视频免费播放| 久久精品一区蜜桃臀影院| youjizzxxxx18| 久久影视一区| 91成人免费在线观看| 日韩三级免费| 亚洲精品白浆高清久久久久久| 丰满少妇乱子伦精品看片| 久久精品视频一区二区| 欧美日韩中文不卡| 欧美96在线丨欧| 国产精品视频福利| 都市激情亚洲一区| 色偷偷88888欧美精品久久久 | 日韩欧美电影一二三| 久久精品视频久久| 国产视频在线观看一区二区三区| 污污的网站18| 好吊视频一区二区三区四区| 精品1区2区| 国产一区二区三区影视| 麻豆一区二区在线观看| 日本免费网站在线观看| 在线观看av不卡| 国产精品老熟女一区二区| 不卡的av在线| 午夜精品中文字幕| 精品成人国产| 日韩av在线一区二区三区| 国内不卡的一区二区三区中文字幕| 欧美国产乱视频| 爱久久·www| 日韩欧美在线123| 最近免费中文字幕大全免费版视频| 亚洲国产高清不卡| 国产+高潮+白浆+无码| 青青草国产精品亚洲专区无| 青青青在线观看视频| 国产精品手机在线播放 | 最近2019中文字幕mv免费看| 99久久久久久久| 一本大道久久a久久精品综合 | 亚洲一区欧美一区| 在线免费观看日韩av| 国产麻豆精品视频| 久久久久久久片| 在线观看亚洲| 在线免费观看一区二区三区| 欧美午夜寂寞| 91福利视频导航| 高清亚洲高清| 4p变态网欧美系列| 成人三级小说| 久久久国产影院| 粉嫩一区二区三区国产精品| 日韩成人在线视频| 亚洲精品中文字幕成人片| 欧美日韩三级视频| 国产伦精品一区二区三区视频网站| 一区二区三区在线视频免费观看| 99久久人妻无码精品系列| 国产成人精品亚洲777人妖| 亚欧激情乱码久久久久久久久| 国产精品资源| 可以看毛片的网址| 欧美在线国产| 亚洲一区在线免费| av一区二区在线播放| 久久精品aaaaaa毛片| 懂色av一区二区| 97av影视网在线观看| 超碰国产精品一区二页| 国产精品美乳在线观看| 台湾佬成人网| 欧洲一区二区视频| 欧美gv在线观看| 久久久在线视频| 国精一区二区三区| 欧美国产第一页| 久久香蕉一区| 欧美国产日韩一区二区三区| www.久久久久.com| 久久99热精品这里久久精品| 成人黄色网址| 欧美成人中文字幕| 日本高清在线观看视频| 精品中文字幕在线| 国产精品偷拍| 久久久久国产精品免费| 波多野结依一区| 久久久久久噜噜噜久久久精品| 激情网站在线| 欧美激情视频一区二区| xxxx在线视频| 97香蕉久久超级碰碰高清版| 亚洲妇女成熟| 国产suv精品一区二区| 亚洲电影有码| 国产欧美日韩视频| 视频一区日韩精品| 成人资源av| 欧美影院天天5g天天爽| 蜜桃视频成人| 日韩在线欧美| 一二三四中文字幕| 亚洲国产高清一区二区三区| a在线视频观看| 丝袜诱惑制服诱惑色一区在线观看 | 亚洲高清在线免费观看| 日本成人在线一区| 三级黄色片播放| gogo大胆日本视频一区| 小早川怜子久久精品中文字幕| 日本一区二区三区免费乱视频| 极品久久久久久久| 亚洲黄色小说网站| av资源免费观看| 欧美日韩国产电影| 成人爽a毛片一区二区| 亚洲美女性视频| 黄色网页在线看| 7777精品视频| 国产精品66| 国产精品三区在线| 色欧美自拍视频| 2019日韩中文字幕mv| 日韩一区精品视频| 992kp免费看片| 26uuu色噜噜精品一区二区| 国产精品视频在| 午夜精品久久久久久久| 国产情侣呻吟对白高潮| 精品美女一区二区| h视频网站在线观看| 久久久久国色av免费观看性色| 91精品影视| av一本久道久久波多野结衣| 国产探花在线精品| 国产精品视频网站在线观看| 日韩成人精品视频| 50一60岁老妇女毛片| 国产精品麻豆欧美日韩ww| 日本少妇在线观看| 欧美日韩国产一级片| 色av男人的天堂免费在线| 久久精品国产清自在天天线 | 亚洲精品一区二区口爆| 在线日韩中文字幕| 国产美女精品写真福利视频| 成人欧美一区二区三区黑人孕妇 | 91国产丝袜在线放| 精品美女久久| 欧美经典三级视频一区二区三区| 国产精品福利在线观看播放| 高清欧美精品xxxxx| 韩国成人在线视频| 熟女俱乐部一区二区| 亚洲高清免费视频| 999国产精品视频免费| 国产亚洲一区二区在线| 蜜桃麻豆av在线| 国产精品一区二区三区四区五区 | 精品人妻无码一区二区三区| 亚洲综合色在线| 91在线公开视频| 一区三区二区视频| 欧美xx视频| 久久久99国产精品免费| 一区二区视频欧美| 女王人厕视频2ⅴk| 亚洲欧美日韩国产综合| 一级片免费观看视频| 中日韩美女免费视频网址在线观看| 涩涩视频在线播放| 国产二区一区| 激情久久综合| 国产精品嫩草69影院| 亚洲男帅同性gay1069| 国产精选久久久| 久久久精品国产网站| 日本国产一区| 在线看视频不卡| 激情综合色综合久久| 色婷婷粉嫩av| 欧美区一区二区三区| 日本综合在线| 国产在线高清精品| 综合视频在线| 粗大的内捧猛烈进出视频| 有码一区二区三区| 丰满肉肉bbwwbbww| 97久久久久久| 亚洲另类春色校园小说| 一本久道综合色婷婷五月| 久久久久久毛片| 中文字幕在线观看视频一区| 色婷婷综合久久久久| 麻豆一二三区精品蜜桃| 欧美狂野激情性xxxx在线观| av在线播放不卡| 欧美在线观看不卡| 自拍偷拍亚洲一区| 精品视频国内| 久久这里只有精品23| 91视频观看视频| 五月婷婷六月婷婷| 精品国产一区久久久| 成人福利免费在线观看| 国产日产欧美视频| 亚洲国产成人自拍| 国产av精国产传媒| 97超碰色婷婷| 日韩一区三区| 在线播放av网址| 欧美性xxxx| 日韩理伦片在线| 国产美女精品在线观看| 久久国产毛片| 永久免费看片视频教学| 欧美精品一区二区三区一线天视频| 五月天av在线| 亚洲乱码一区二区三区三上悠亚 | 国产精品手机播放| 欧美福利影院| 手机av免费看| 宅男在线国产精品| 在线观看v片| 一本二本三本亚洲码 | 欧美特级黄色录像| 欧美一区二区三级| 成人美女大片|