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

Vue3 高階 API 大匯總,強(qiáng)到離譜

開發(fā) 前端
Higher Order function ,一個函數(shù)可以接收一個或多個函數(shù)作為輸入,或者輸出一個函數(shù),至少滿足上述條件之一的函數(shù),叫做高階函數(shù)。

[[440713]]

高階函數(shù)是什么呢?

高階函數(shù)英文名叫:Higher Order function ,一個函數(shù)可以接收一個或多個函數(shù)作為輸入,或者輸出一個函數(shù),至少滿足上述條件之一的函數(shù),叫做高階函數(shù)。

前言

本篇內(nèi)容的知識點比較多,講得不夠細(xì)致,不熟悉的可翻閱前幾篇文章,分別對每個知識點都有一篇特別詳細(xì)的文章。建議讀者收藏!

一、Mixin 混入

mixin 混入,提供了一種非常靈活的方式,來分發(fā) vue 組件中的可復(fù)用功能,一個mixin 對象可以包含任意組件選項,當(dāng)組件使用 mixin 對象時,所有的 mixin 對象的選項將被混入組件本身的選項。

mixins 是一個數(shù)組,一個組件可以引入多個 mixin 對象。使用方法如:

  1. <script> 
  2. const myMixin = { 
  3.  data(){ 
  4.   return { 
  5.    num:520 
  6.   } 
  7.  }, 
  8.  mounted(){ 
  9.   console.log('mixin mounted'); 
  10.  } 
  11. export default { 
  12.   mixins:[myMixin], 
  13. </script> 

mixin 使用主要針對選項式API,在vue3中使用相對少。使用時注意事項:

  1. 使用 mixin 對象時,組件內(nèi)部和 mixin 包含相同選項,該選項會進(jìn)行合并處理,并不會覆蓋。
  2. 使用的 mixin 對象選項 和實例中的選項擁有相同的屬性時,會選擇就近原則,優(yōu)先繼承實例內(nèi)的值,所以 mixin 對象的屬性會被實例中的屬性給覆蓋掉。
  3. mixin 對象也可以添加生命周期鉤子函數(shù),兩者都會執(zhí)行,優(yōu)先執(zhí)行 mixin 中的, 然后再執(zhí)行實例中的。

mixin也可以自定義屬性,如果與實例中的屬性沖突時,可以使用 optionMergeStrategies 選項合并策略,自定義合并規(guī)則。

二、自定義指令

自定義指令分為全局和局部自定義指令。

2.1、自定義指令定義

全局自定義指令

在 vue3 中,vue 實例通過createApp 創(chuàng)建,所以全局自定義指令的掛載方式也改變了, directive 被掛載到 app上。

  1. app.directive('focus',{ 
  2.  mounted(el){ 
  3.   el.focus() 
  4.  } 
  5. }) 

 局部自定義指令

  1. const autoFocus = { 
  2.  focus:{ 
  3.   mounted(el){ 
  4.     el.focus() 
  5.   } 
  6.  } 
  7. export default
  8.  directives:autoFocus, 

 自定義指令 v-xxx 直接使用就好,對應(yīng)上述示例自定義指令為 v-focus。

2.2、自定義指令鉤子函數(shù)參數(shù)

每個鉤子里面的參數(shù)含義:

mounted(el,binding,vnode){…}

el:代表當(dāng)前使用該指令的元素

binding:指令傳來的值

vnode:當(dāng)前元素節(jié)點相關(guān)

2.3、自定義指令鉤子函數(shù)

一個指令定義對象可以提供如下幾個鉤子函數(shù)(都是可選的,根據(jù)需要引入)

  • created :綁定元素屬性或事件監(jiān)聽器被應(yīng)用之前調(diào)用。該指令需要附加需要在普通的 v-on 事件監(jiān)聽器前調(diào)用的事件監(jiān)聽器時,這很有用。
  • beforeMounted :當(dāng)指令第一次綁定到元素并且在掛載父組件之前執(zhí)行。
  • mounted :綁定元素的父組件被掛載之后調(diào)用。
  • beforeUpdate :在更新包含組件的 VNode 之前調(diào)用。
  • updated :在包含組件的 VNode 及其子組件的 VNode 更新后調(diào)用。
  • beforeUnmounted :在卸載綁定元素的父組件之前調(diào)用
  • unmounted :當(dāng)指令與元素解除綁定且父組件已卸載時,只調(diào)用一次。

2.4、自定義指令參數(shù)

自定義指令的也可以帶參數(shù),參數(shù)可以是動態(tài)的,參數(shù)可以根據(jù)組件實例數(shù)據(jù)進(jìn)行實時更新。

使用方法如下:

  1. <template> 
  2.  <div> 
  3.   <div v-fixed:pos="posData">定位</div> 
  4.  </div> 
  5. </template> 
  6.  
  7. <script> 
  8. //自定義指令動態(tài)參數(shù) 
  9. const autoFocus = { 
  10.  fixed:{ 
  11.   beforeMount(el,binding){ 
  12.    el.style.position = "fixed" 
  13.    el.style.left = binding.value.left+'px' 
  14.    el.style.top = binding.value.top + 'px' 
  15.   } 
  16.  } 
  17. export default { 
  18.  directives:autoFocus, 
  19.  setup(){ 
  20.   const posData = { 
  21.    left:20, 
  22.    top:200 
  23.   } 
  24.   return { 
  25.    posData, 
  26.   } 
  27.  } 
  28. </script> 

三、teleport 傳送門

teleport 傳送門組件,提供一種簡潔的方式,可以指定它里面的內(nèi)容的父元素。通俗易懂地講,就是 teleport 中的內(nèi)容允許我們控制在任意的 DOM 中,使用簡單。

使用語法:

  1. <teleport to="body"
  2.  <div> 
  3.   需要創(chuàng)建的內(nèi)容 
  4.  </div>   
  5. </teleport> 

to 屬性是指定 teleport 中的內(nèi)容加入的 DOM 元素。可以是標(biāo)簽名,也可以是 id 或類名。

為什么使用 teleport ?

使用 vue 開發(fā)時,都是在多個組件之間不斷地嵌套,處理元素的樣式或者層級的時候就會變得困難。如我們需要添加一個 modal 模態(tài)框或 toast 提示框,如果我們把這樣的框可以從 vue 組件中剝離出來,我們樣式和層級設(shè)置起來會更加簡便。

有些同學(xué)會想,這直接放到 index.html 中不就好了嗎?另外 modal 、toast 元素需要使用 vue 組件的狀態(tài)值,通過狀態(tài)控制 modal、toast 的隱藏顯示。如果直接放入 index.html 則狀態(tài)控制就復(fù)雜了。

所以 teleport 傳送門組件就派上用場了。有點像“哆啦A夢”的任意門,可以把元素傳送到任意的元素內(nèi)。同時還可以使用 vue 組件內(nèi)的狀態(tài)值控制它。

四、setup

setup 用來寫組合式 api,從生命周期鉤子函數(shù)角度分析,相當(dāng)于取代了 beforeCreate 。會在 creted 之前執(zhí)行。內(nèi)部的屬性和方法,必須 return 暴露出來,將屬性掛載到實例上,否則沒有辦法使用。setup內(nèi)部沒有 this ,所以不能掛載 this 相關(guān)的東西,它可以接收兩個參數(shù):props 和 context 。

setup 特性:

1、這個函數(shù)會在 created 之前執(zhí)行,上述已解釋。

2、setup 內(nèi)部沒有 this,不能掛載 this 相關(guān)的東西。

3、setup 內(nèi)部的屬性和方法,必須 return 暴露出來,否則沒有辦法使用。

4、setup 內(nèi)部數(shù)據(jù)不是響應(yīng)式的。

5、setup不能調(diào)用生命周期相關(guān)函數(shù),但生命周期函數(shù)可以調(diào)用setup內(nèi)的函數(shù)。

五、ref

ref 主要作用是使基礎(chǔ)類的數(shù)據(jù)具備響應(yīng)式能力,使用之前必須引入。在 Composition API中數(shù)據(jù)不具備響應(yīng)式,修改數(shù)據(jù)時視圖不會改變,所以在創(chuàng)建數(shù)據(jù)時,使用ref包裹一下,讓數(shù)據(jù)具備響應(yīng)式。

ref 使用:

  1. import { ref } from "vue" 
  2. export default
  3.  setup(){ 
  4.   let mood = ref("此時心情好差呀!"
  5.   setTimeout(()=>{ 
  6.    mood.value = "心情要變的像人一樣美" 
  7.   },3000) 
  8.   return
  9.    mood 
  10.   } 
  11.  } 

六、reactive

讓引用類型的數(shù)據(jù)具備響應(yīng)式。

與上述的 ref 原理和用法都一致。

  1. import { reactive } from "vue" 
  2. let me = reactive({ 
  3.  single:true
  4.  want:"暖的像火爐的暖男" 
  5. }) 

七、readonly

讓數(shù)據(jù)只讀,不能修改數(shù)據(jù)。

父子組件之間傳值時,Vue 是單向數(shù)據(jù)流,為了防止子組件修改數(shù)據(jù),所以使用 readonly 包裹數(shù)據(jù),保證只能在源數(shù)據(jù)上修改。

  1. import { readonly } from "vue" 
  2. let me = readonly({ 
  3.  single:true
  4.  want:"要一個對象" 
  5. }) 

八、toRefs

toRefs 用來解構(gòu) ref、reactive 包裹的響應(yīng)式數(shù)據(jù)。

使用:

  1. import { ref , reactive, toRefs } from "vue" 
  2. let me = reactive({ 
  3.  single:true
  4.  want:"暖的像火爐的暖男" 
  5. }) 
  6. const { single, want } = toRefs( me ) 

九、toRef

父子組件之間進(jìn)行傳值時,有些參數(shù)是可選參數(shù),toRefs 解構(gòu)參數(shù)不存在時就會報錯,使用 toRef 解決該問題。

使用:

  1. import { toRef } from "vue" 
  2. const love = toRef(obj,'love'

解構(gòu)時先檢查 obj 對象是否存在 love 屬性,如果存在就繼承obj對象中的屬性值,如果不存在就會創(chuàng)建一個。

十、context

setup(props,context)。

context 上下文環(huán)境,其中包括了屬性、插槽、自定義事件三部分。

  1. setup(props,context){ 
  2.  const { attrs,slots,emit } = context 

attrs 是一個非響應(yīng)式的對象,主要接收 no-props 屬性,經(jīng)常用來傳遞一些樣式屬性。

slots 是一個 proxy 對象,其中 slots.default() 獲取到的是一個數(shù)組,數(shù)組長度由組件的插槽決定,數(shù)組內(nèi)是插槽內(nèi)容。

setup 內(nèi)不存在this,所以 emit 用來替換 之前 this.$emit 的,用于子傳父時,自定義事件觸發(fā)。

十一、watch 新用法

監(jiān)聽數(shù)據(jù)變化,做出相應(yīng)的業(yè)務(wù)處理。在組合式api中,偵聽器可以監(jiān)聽一個或多個屬性,也可以是基礎(chǔ)類型數(shù)據(jù)或引用數(shù)據(jù)類型。

watch 的特點:

  • 有惰性:運行的時候,不會立即執(zhí)行。
  • 更加具體:需要添加監(jiān)聽的屬性。
  • 可以訪問屬性之前的值:回調(diào)函數(shù)內(nèi)會返回最新值和修改之前的值。
  • 可配置:可以添加配置項。

配置項

  • immediate:配置watch屬性是否立即執(zhí)行,值為 true 時,一旦運行就會立即執(zhí)行,值為false時,保持惰性。
  • deep:配置 watch 是否深度監(jiān)聽,值為 true 時,可以監(jiān)聽對象所有屬性,值為 false 時保持更加具體特性,必須指定到具體的屬性上。

十二、watchEffect

是一個幀聽器,也是一個副作用函數(shù)。它會監(jiān)聽引用數(shù)據(jù)類型的所有屬性,不需要具體到某個屬性,一旦運行就會立即監(jiān)聽,組件卸載的時候會停止監(jiān)聽。

watchEffect 特點:

  1. 非惰性:一旦運行就會立即執(zhí)行。
  2. 更加抽象:使用時不需要具體指定監(jiān)聽的誰,回調(diào)函數(shù)內(nèi)直接使用就可以。相比watch比較難理解。
  3. 不可訪問之前的值:只能訪問當(dāng)前最新的值,訪問不到修改之前的值。

watch 的前兩個特點與 watchEffect 的兩個特點剛好相反,watch 通過配置項可以修改成帶有 watchEffect 特點

十三、computed 新用法

在組合式api中計算屬性用法也發(fā)生了改變,使用之前需要引入。

  1. import { ref, computed } from "vue" 
  2. export default
  3.  setup(){ 
  4.   let sum = computed(()=>{ 
  5.    return .... 
  6.   }) 
  7.  } 

 也可以是選項式寫法:

  1. let sum = computed({ 
  2.  get:()=>{ 
  3.   return .... 
  4.  }, 
  5.  set:(value)=>{ 
  6.   return .... 
  7.  } 
  8. }) 

十四、provide / inject

provide發(fā)射數(shù)據(jù)或函數(shù),inject 接收數(shù)據(jù)或函數(shù)。

project / inject 類似與發(fā)布訂閱,主要用在組件傳值層級太深,或兄弟組件沒法傳參,此時使用 project / inject 特別方便。

  1. //發(fā)射 
  2. import { provide, readonly } from "vue" 
  3. provide('info',readonly(info)) 
  4.  
  5. //接收 
  6. import { inject } from "vue" 
  7. const info = inject('info'

十五、生命周期鉤子函數(shù)新寫法

組合式api中,setup代替了beforeCreated和created,所以這兩個鉤子失效,其他的只需要引入時前面加on即可。

  1. import { onBeforeMount } from "vue" 
  2. setup(){ 
  3.  onBeforeMount(()=>{ 
  4.   .... 
  5.  }) 

 其他的鉤子函數(shù)與上相同。

vue3 高階 API 大匯總,強(qiáng)到離譜

十六、獲取真實DOM

此處的 ref 與上邊的 ref 不同,是獲取真實DOM節(jié)點的函數(shù)。

使用時:

  1. <div ref="box" class="test" id="boxtest">獲取真實DOM</div> 
  2.  
  3. import { ref,onMounted } from "vue" 
  4. export default { 
  5.  setup(){ 
  6.   const box = ref(null
  7.   onMounted(()=>{ 
  8.    console.log('box',box.value); 
  9.   }) 
  10.   return { 
  11.    box 
  12.   } 
  13.  }   

 使用的時候記得在return,然后再 mounted 的時候去獲取內(nèi)容就可以了。

 

責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2020-09-19 21:15:26

Composition

2025-10-24 10:47:25

Vue3前端插槽

2023-11-24 08:02:28

2025-10-28 04:10:00

Web開發(fā)工具

2025-08-27 09:12:00

谷歌AI模型

2021-12-01 08:11:44

Vue3 插件Vue應(yīng)用

2024-03-01 11:32:22

Vue3APIVue.js

2025-03-26 10:29:22

Vue3前端API

2021-11-30 08:19:43

Vue3 插件Vue應(yīng)用

2023-11-28 09:03:59

Vue.jsJavaScript

2025-09-30 12:00:00

Vue 3Hooks

2021-07-29 12:05:18

Vue3Api前端

2022-06-13 08:39:21

Vue3API

2022-07-13 10:07:31

vue3組件監(jiān)聽器

2024-01-04 08:38:21

Vue3API慎用

2025-06-30 09:46:34

Vue3性能API

2021-12-02 05:50:35

Vue3 插件Vue應(yīng)用

2025-11-19 08:23:42

2025-10-17 07:10:00

前端開發(fā)Vue
點贊
收藏

51CTO技術(shù)棧公眾號

国产精品第七十二页| 欧美久久一二区| 国产一区二区免费电影| 久久国产精品二区| 粉嫩的18在线观看极品精品| 亚洲综合清纯丝袜自拍| 国产视色精品亚洲一区二区| 男女啊啊啊视频| 九九热爱视频精品视频| 欧美日韩亚州综合| 91免费网站视频| 亚洲国产福利视频| 亚洲影院在线| 在线观看日韩视频| 性生活在线视频| av免费网站在线观看| 成人在线视频一区| 日本亚洲欧美三级| 免费高清在线观看电视| h视频久久久| 色综合一个色综合亚洲| 手机看片福利永久国产日韩| 国产成人免费看一级大黄| 黄色综合网站| 国产香蕉一区二区三区在线视频| 五月天婷婷亚洲| 国产蜜臀在线| 中文字幕第一页久久| av一区和二区| 久久久久久亚洲av无码专区| 天天久久综合| 日韩精品久久久久久久玫瑰园| 男人插女人下面免费视频| 综合久久2o19| 粉嫩高潮美女一区二区三区| 日本国产欧美一区二区三区| 男女性高潮免费网站| 亚洲人成网77777色在线播放| 欧美日韩亚洲综合一区二区三区| 国产freexxxx性播放麻豆 | 欧美三级在线视频| 一本大道东京热无码aⅴ| 亚洲av片在线观看| 日韩综合小视频| 久久精品2019中文字幕| 亚洲午夜久久久久久久久红桃| 国产精品xnxxcom| 91成人网在线| 欧美日韩亚洲一| 黄色在线观看视频网站| 最近中文字幕一区二区三区| 国产一区二区三区无遮挡| 国产精品欧美亚洲| 日本免费新一区视频| 国语自产在线不卡| 欧美又粗又大又长| 日韩欧美伦理| 亚洲一二三在线| 极品白嫩丰满美女无套| 懂色av一区二区| 欧美一区二区三区在线观看| 9久久婷婷国产综合精品性色| 伊人久久综合一区二区| 亚洲va韩国va欧美va| 97在线免费视频观看| 91看片在线观看| 国产欧美精品日韩区二区麻豆天美| 国产精品亚洲综合| 亚洲xxxx天美| 精彩视频一区二区| 国产欧美va欧美va香蕉在| 黄色一级视频免费看| 一区二区福利| 45www国产精品网站| 日韩黄色精品视频| 影音先锋久久久| 久久久久久高潮国产精品视| 国产性生活网站| 欧美国产高清| 欧美激情亚洲激情| www.av视频在线观看| 很黄很黄激情成人| 久久久久女教师免费一区| 欧美色图亚洲天堂| 精品成人免费| 97av在线视频| 丁香社区五月天| 国产手机视频一区二区| 97热在线精品视频在线观看| 91浏览器在线观看| 久久亚洲不卡| 国产精品专区一| 99热这里精品| 成人av综合一区| 欧美日韩精品免费观看| 大乳在线免费观看| 最新国产精品久久精品| 精品视频在线观看一区二区| av在线网页| 色综合天天综合网天天狠天天| 欧美黑人又粗又大又爽免费| 欧美特黄色片| 欧美v亚洲v综合ⅴ国产v| 欧美无人区码suv| 一区三区在线欧| 日韩在线国产精品| 91在线播放观看| 国产欧美高清| 国产精自产拍久久久久久| 国产三级精品在线观看| 成人av中文字幕| 五月天亚洲综合情| www久久日com| 欧美日韩中文字幕在线| 不卡的在线视频| 成人午夜大片| 一区二区三区天堂av| 乱老熟女一区二区三区| 亚洲激情网站| 国产日韩在线免费| 免费观看毛片网站| 日本一区二区在线不卡| 99国产精品白浆在线观看免费| 在线男人天堂| 91精品国产综合久久香蕉的特点| 黄色av网址在线观看| 久久综合88| 18性欧美xxxⅹ性满足| 91久久精品国产91性色69 | 色综合久久久久网| 国产福利一区视频| avtt综合网| 日韩亚洲国产中文字幕| 日本少妇做爰全过程毛片| 蜜桃视频一区二区| 久久66热这里只有精品| www在线免费观看视频| 狠狠色狠狠色综合日日五| 亚洲精品国产久| 国产一区二区三区91| 隔壁老王国产在线精品| 国产美女免费看| 国产欧美一区二区精品性色| 东北少妇不带套对白| 黑人巨大精品| 亚洲第一偷拍网| 国产精品三区在线观看| 日韩av午夜在线观看| 国产区二精品视| 在线播放免费av| 欧美伊人久久久久久午夜久久久久| 黄色av电影网站| 亚洲欧美在线专区| 国产精品欧美一区二区| 日产精品久久久久久久性色| 一区二区免费视频| 中文字幕在线导航| 黄色不卡一区| 欧美中文字幕视频| 天堂av资源在线| 亚洲一区二区三区在线看| 亚洲女人在线观看| 日韩激情一区| 国产v综合v亚洲欧美久久| 亚洲区小说区图片区| 亚洲一二三区在线观看| 国产裸体视频网站| 欧美~级网站不卡| 亚洲free性xxxx护士hd| 成人av免费| 欧美一级日韩一级| 亚洲国产精品久| 高清日韩电视剧大全免费| 麻豆视频传媒入口| 日韩高清二区| 欧美成人亚洲成人| 午夜精品无码一区二区三区| 亚洲自拍偷拍欧美| 久久久久亚洲av无码网站| 欧美日韩国产亚洲一区| 国产精品视频免费一区二区三区 | 久久久99精品久久| 黄色一级视频片| 伊人久久大香线蕉综合网蜜芽| 欧美在线视频一区二区| 欧美美乳在线| 欧美日韩黄色影视| 亚洲综合视频网站| 另类小说综合欧美亚洲| 色哟哟免费网站| 看全色黄大色大片免费久久久| 992tv在线成人免费观看| 性xxxx18| 欧美三区在线观看| 1024手机在线视频| 成人性生交大片免费看中文| 日韩在线视频在线观看| 视频国产一区| 国产美女91呻吟求| 欧美性受ⅹ╳╳╳黑人a性爽| 亚洲国产欧美在线成人app| 国产精品久久久久久久久久久久久久久久久 | 含羞草久久爱69一区| 污片视频在线免费观看| 亚洲国产欧美日韩精品| 中文字幕观看视频| 一区二区欧美精品| 亚洲图片另类小说| 国产一区二区三区在线看麻豆| 国产精品视频一二三四区| 日韩丝袜视频| 国产精品999999| gogo在线高清视频| 亚洲欧美日韩一区二区在线| 国产精品久久777777换脸| 午夜精品爽啪视频| 中文字幕在线播放一区| 美国一区二区三区在线播放| 国产女教师bbwbbwbbw| 极品美女一区二区三区| 99在线视频首页| 国产不卡123| 久久精品91久久香蕉加勒比| 天堂成人在线视频| 欧美日韩一区三区| 久久99国产综合精品免费| 国产亚洲欧美一区在线观看| 免费观看一区二区三区| 日韩不卡在线观看日韩不卡视频| 成人午夜免费剧场| 国产一区二区三区不卡视频网站| 国产高清在线精品一区二区三区| 精品久久久网| 韩剧1988免费观看全集| bestiality新另类大全| 在线中文字幕日韩| 精品无吗乱吗av国产爱色| 欧美一区永久视频免费观看| 成人午夜精品视频| 偷拍与自拍一区| 久草免费在线观看视频| 国产精品美女www爽爽爽| 亚洲中文字幕无码av| 国产一区二区在线影院| 狠狠躁狠狠躁视频专区| 麻豆91精品| 男人天堂1024| 在线免费观看欧美| 日韩人妻一区二区三区蜜桃视频| 日韩av密桃| 午夜精品视频在线观看一区二区| 欧美性生活一级片| 官网99热精品| 亚洲国产高清在线观看| 成人黄色av网站| 99视频有精品高清视频| 国产日韩换脸av一区在线观看| 天堂资源在线| 97国产精品视频人人做人人爱| 一二三四区在线观看| 美女av一区二区| 麻豆影院在线| 日韩在线视频线视频免费网站| a视频网址在线观看| 国产亚洲精品日韩| 成人在线免费视频| 最新的欧美黄色| 瑟瑟视频在线| 在线播放国产一区中文字幕剧情欧美| 你懂得在线网址| 亚洲图片在线综合| 91精彩视频在线观看| 国产香蕉一区二区三区在线视频 | 亚洲天堂网在线观看| 免费播放片a高清在线观看| 日韩久久午夜影院| 蜜桃成人在线视频| 一区二区成人av| 成人高潮成人免费观看| 色琪琪综合男人的天堂aⅴ视频| 国产精品一区在线看| 中文字幕亚洲激情| 日韩美女网站| 欧美人成在线视频| 91高清视频在线观看| 97久久精品人人澡人人爽缅北| 黄色在线观看www| 国产91精品视频在线观看| 欧美人与性动交xxⅹxx| 国产精品露脸av在线| 四虎国产精品免费久久5151| 亚洲free性xxxx护士hd| 国产精品视频3p| 国产专区一区二区| 国产精品自拍区| 中文字幕一区二区三区5566| 中文字幕午夜精品一区二区三区 | 欧美一区二区三区粗大| 亚洲免费av高清| 亚洲天堂视频网站| 日韩一区二区精品葵司在线| 青青青草网站免费视频在线观看| 日韩亚洲精品电影| 精品极品在线| 91理论片午午论夜理片久久| 校园春色另类视频| 喜爱夜蒲2在线| 奇米777欧美一区二区| 黄色国产在线视频| 国产精品久久久久久久久图文区 | 国产欧美短视频| 精品人妻一区二区三区免费| 欧美国产乱子伦 | 毛片aaaaaa| 亚洲国产wwwccc36天堂| 91av国产精品| 亚洲天堂久久av| 欧美xxxhd| 99热在线国产| 91日韩免费| 三级a在线观看| 91视频国产资源| 久久精品欧美一区二区| 欧美一区二区在线免费观看| av网站在线免费观看| 日韩美女毛茸茸| 欧美美女啪啪| 国产精品成人久久电影| 国产91精品久久久久久久网曝门| 永久免费看mv网站入口| 在线观看国产91| 国产一区精品| 日韩男女性生活视频| 亚洲香蕉视频| 中文字幕日本最新乱码视频| 成人sese在线| 日产精品久久久久| 亚洲成avwww人| 国内老司机av在线| 99久久无色码| 欧美成人一区二免费视频软件| 天天久久综合网| 亚洲欧洲在线观看av| 一区二区三区精| 精品国产一区二区三区久久久 | 国产精品.com| 欧美日韩久久| 东京热av一区| 精品久久久中文| 免费在线稳定资源站| 日本久久久久久| 不卡一区2区| 日本一二区免费| 亚洲精品高清在线观看| 亚洲爱情岛论坛永久| 午夜精品国产精品大乳美女| 神马午夜久久| av无码精品一区二区三区| 国产人久久人人人人爽| 又污又黄的网站| 久久精品亚洲精品| 视频精品国内| 乱妇乱女熟妇熟女网站| 91免费看视频| 青青艹在线观看| xvideos亚洲人网站| 亚洲一区二区三区免费| 欧美日韩性生活片| 久久久久国产成人精品亚洲午夜| 亚洲精品毛片一区二区三区| 中文字幕日韩免费视频| 国产一区一区| 欧美,日韩,国产在线| 国产欧美视频一区二区三区| 国产精品久久久久久久久毛片| 欧美区二区三区| 你懂的一区二区三区| 中日韩av在线播放| 亚洲国产成人av好男人在线观看| 欧洲亚洲精品视频| 成人福利网站在线观看| 激情综合在线| 欧洲美熟女乱又伦| 日韩欧美国产小视频| 成人爽a毛片免费啪啪| 一本色道婷婷久久欧美| 成人免费的视频| 中文字幕av在线免费观看| 欧美激情18p| 国产伦精品一区二区三区千人斩| 亚洲色图欧美自拍| 色综合久久中文字幕综合网| av电影免费在线观看| 免费日韩电影在线观看| 国产一区二区日韩精品| 黄色片中文字幕| 久久99国产精品自在自在app| 精品久久久久久久久久久下田| xxxx国产视频| 欧美日韩在线播|