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

一網(wǎng)打盡──Webpack工程打包之一

網(wǎng)絡(luò) 通信技術(shù)
什么是前端資源構(gòu)建工具?在瀏覽器中是不認(rèn)識(shí)sass、less、ts等web資源和js高級(jí)語法,只有通過webpack這樣的構(gòu)建工具來將它們一一編譯成瀏覽器能夠讀取的js文件。

[[427986]]

本文轉(zhuǎn)載自微信公眾號(hào)「前端萬有引力」,作者 一川 。轉(zhuǎn)載本文請(qǐng)聯(lián)系前端萬有引力公眾號(hào)。

1.webpack的基本概念

1.1 webpack是什么?

webpack是一個(gè)現(xiàn)代js應(yīng)用程序的靜態(tài)模塊打包器(module bundler),一種前端資源構(gòu)建工具。

  • 什么是前端資源構(gòu)建工具?在瀏覽器中是不認(rèn)識(shí)sass、less、ts等web資源和js高級(jí)語法,只有通過webpack這樣的構(gòu)建工具來將它們一一編譯成瀏覽器能夠讀取的js文件。
  • 什么是靜態(tài)資源打包器?在webpack處理應(yīng)用程序時(shí),它會(huì)遞歸構(gòu)建一個(gè)依賴關(guān)系圖,將應(yīng)用程序需要的所有模塊打包成一個(gè)或多個(gè)bundle。

1.2 webpack可以用來做什么?

webpack作為前端工程師最常用的前端資源構(gòu)建工具,能夠解決很多在開發(fā)中的遇到的痛點(diǎn)和難點(diǎn)。

  • 可以不依賴后端,解決調(diào)用后端接口時(shí)的跨域問題
  • 在代碼改動(dòng)后自動(dòng)刷新瀏覽器,有緩存時(shí)也無需清除緩存
  • 可以方便解決css和js新特性在各瀏覽器上的兼容性問題,提高自己的開發(fā)效率
  • 無需使用額外的打包平臺(tái)和編寫打包腳本,也無需單獨(dú)對(duì)js、css等進(jìn)行打包壓縮

當(dāng)然,webpack的強(qiáng)大不止這些,它有很多簡(jiǎn)單方便的配置能夠提升你的開發(fā)效率。

2. webpack的核心配置

常用的核心配置如下:

  • 入口 entry
  • 輸出 output
  • 加載器 loader
  • 插件 plugin
  • 模式 mode
  • 其它配置等

當(dāng)然,以上列舉的是常用的配置,其它的需求可以查找官方文檔進(jìn)行閱讀:[https://webpack.docschina.org/concepts/]

2.1 入口 entry

入口(entry)毫無疑問指的是webpack以哪個(gè)或哪些文件作為打包的起點(diǎn),以哪個(gè)模塊來構(gòu)建內(nèi)部依賴圖。webpack會(huì)根據(jù)依賴圖去分析各個(gè)模塊之間的依賴關(guān)系,從而進(jìn)行打包。

  1. //單文件入口,string形式:打包形成一個(gè)chunk,輸出一個(gè)bundle文件,當(dāng)然在實(shí)際開發(fā)中的靈活性不大 
  2. entry:"./src/index.js" 
  3.  
  4. //多文件入口,array形式:所有文件最終形成一個(gè)chunck,輸出一個(gè)bundle文件 
  5. entry:["./src/index.js","./src/main.js"
  6.  
  7. //多文件入口,object形式:多個(gè)入口文件就形成多個(gè)chunk,最終輸出多個(gè)bundle文件,而chunk的名稱就是對(duì)象的key值.雖然這種方式比較繁瑣,但是其擴(kuò)展性比較強(qiáng),配置可以重復(fù)使用,也可以配合其它配置組合使用。 
  8. entry:{ 
  9.   index:"./src/index.js"
  10.   main:"./src/main.js" 

當(dāng)然在描述入口的對(duì)象的時(shí)候,還有許多其它配置屬性,具體可以查看文檔。

  • dependOn: 當(dāng)前入口所依賴的入口。它們必須在該入口被加載前被加載。
  • filename: 指定要輸出的文件名稱。
  • import: 啟動(dòng)時(shí)需加載的模塊。
  • library: 指定 library 選項(xiàng),為當(dāng)前 entry 構(gòu)建一個(gè) library。
  • runtime: 運(yùn)行時(shí) chunk 的名字。如果設(shè)置了,就會(huì)創(chuàng)建一個(gè)新的運(yùn)行時(shí) chunk。在 webpack 5.43.0 之后可將其設(shè)為 false 以避免一個(gè)新的運(yùn)行時(shí) chunk。
  • publicPath: 當(dāng)該入口的輸出文件在瀏覽器中被引用時(shí),為它們指定一個(gè)公共 URL 地址。請(qǐng)查看 output.publicPath。

2.2 輸出 output

輸出(output)顯而易見就是告訴webpack在哪里輸出打包后的資源bundles,以及如何命名這些輸出文件。當(dāng)然主要文件默認(rèn)為"./dist/main.js",其它文件則放在"./dist"文件夾中。

  1. // 打包出口  
  2. output:{ 
  3.     // 輸出文件夾路徑 
  4.     path:path.resolve(__dirname,"dist"), 
  5.     // 文件名 
  6.     // filename:"bundle.js" 
  7.     // 如果多個(gè)入口起點(diǎn),應(yīng)當(dāng)使用占位符確保每個(gè)文件具有唯一名稱 
  8.     filename:"[name].js"
  9.     // 所有資源引入公共路徑前綴,用于生產(chǎn)環(huán)境需謹(jǐn)慎 
  10.     publicPath:"",//編譯時(shí),不知道其輸出文件的地址,則將其置空,在運(yùn)行時(shí)通過入口起點(diǎn)文件的__webpack_public_path__進(jìn)行動(dòng)態(tài)配置。 
  11.     chunkFilename: "[contenthash:10].chunk.js"
  12.     clean: true, //打包前清空輸出目錄,相當(dāng)于clean-webpack-plugin插件的作用。 
  13.     /* 當(dāng)用 Webpack 去構(gòu)建一個(gè)可以被其他模塊導(dǎo)入使用的庫(kù)時(shí)需要用到library */ 
  14.     library: { 
  15.         name"[name]",//整個(gè)庫(kù)向外暴露的變量名 
  16.         type: "window"//庫(kù)暴露的方式 
  17.     } 

切記:即使可以存在多個(gè) entry 起點(diǎn),但只能指定一個(gè) output 配置。

2.3 加載器 loader

正如你所知道的,webpack只能解析js和json文件,這是其天生自帶的能力。而loader的能力就是讓webpack可以去處理其它類型的文件,將其轉(zhuǎn)為webpack能夠解析的模塊文件js或json,以提供給應(yīng)用程序使用,生成到依賴圖中。

  1. // 加載器 
  2. loader:{ 
  3.     // 匹配文件類型,服從正則表達(dá)式語法 
  4.     test:/\.css/, 
  5.     // 定義在轉(zhuǎn)換時(shí),使用到哪些loader,自下而上、自右至左進(jìn)行處理 
  6.     use:[ 
  7.       "style-loader",//創(chuàng)建style標(biāo)簽,將js文件中的樣式資源提取出來,添加到index.html文件的head標(biāo)簽中 
  8.       "css-loader",//將css文件轉(zhuǎn)變成commonjs格式加載到j(luò)s文件中 
  9.       { 
  10.         loader:"postcss-loader",//css的兼容性處理,切記:需要預(yù)先在package.json文件中配置browserlist 
  11.         options:{ 
  12.           postcssOptions:{ 
  13.             ident:"postcss"
  14.             // postcss-preset-env插件:幫postcss找到package.json中的browserslist配置,根據(jù)配置加載指定的兼容性樣式 
  15.             plugins:[require("postcss-preser-env")()] 
  16.           } 
  17.         } 
  18.       } 
  19.     ] 
  20.   }, 
  21.   {  
  22.       test: /\.js$/,  
  23.       // 注意需要在package.json配置browserslist,否則babel-loader不生效  
  24.       // js兼容處理 babel  
  25.       loader: "babel-loader",  
  26.       // 規(guī)則只使用一個(gè)loader時(shí)推薦寫法  
  27.       options: {  
  28.           presets: [  
  29.           [  
  30.               "@babel/preset-env"
  31.               // 預(yù)設(shè):指示babel做怎么樣的兼容處理  
  32.               {  
  33.                   useBuiltIns: "usage",  
  34.                   //按需加載  
  35.                   corejs: {  
  36.                       version: "3",  
  37.                   },  
  38.                   targets: "defaults",  
  39.               }  
  40.            ]  
  41.          ]  
  42.     }  

2.4 插件 plugin

插件plugin:插件其實(shí)就是輔助loader去執(zhí)行范圍更廣的人物,從打包優(yōu)化、文件壓縮、資源管理以及重新注入環(huán)境變量。

  1. // CleanWebpackPlugin幫助你在打包時(shí)自動(dòng)清除dist文件,學(xué)習(xí)時(shí)使用比較方便 
  2. // const { CleanWebpackPlugin } = require("clean-webpack-plugin"); //從webpack5開始,webpack內(nèi)置了該功能,只要在ouput中配置clear為true即可 
  3.  
  4. // HtmlWebpackPlugin幫助你創(chuàng)建html文件,并自動(dòng)引入打包輸出的bundles文件。支持html壓縮。 
  5. const HtmlWebpackPlugin = require("html-webpack-plugin"); 
  6.  
  7. // 該插件將CSS提取到單獨(dú)的文件中。它會(huì)為每個(gè)chunk創(chuàng)造一個(gè)css文件。需配合loader一起使用 
  8. const MiniCssExtractPlugin = require("mini-css-extract-plugin"); 
  9.  
  10. // 該插件將在Webpack構(gòu)建過程中搜索CSS資源,并優(yōu)化\最小化CSS 
  11. const OptimizeCssAssetsWebpackPlugin = require("optimize-css-assets-webpack-plugin"); 
  12.  
  13. // vue-loader V15版本以上,需要引入VueLoaderPlugin插件,它的作用是將你定義過的js、css等規(guī)則應(yīng)用到vue文件中去。 
  14. const { VueLoaderPlugin } = require('vue-loader'
  15.  
  16. module.exports = { 
  17.     module: { 
  18.         rules: [ 
  19.             { 
  20.                 test: /\.vue$/, 
  21.                 loader: "vue-loader" 
  22.             }, 
  23.             { 
  24.                 test: /\.css$/, 
  25.                 use: [ 
  26.                     // MiniCssExtractPlugin.loader的作用就是把css-loader處理好的樣式資源(js文件內(nèi)),單獨(dú)提取出來 成為css樣式文件 
  27.                     MiniCssExtractPlugin.loader,//生產(chǎn)環(huán)境下使用,開發(fā)環(huán)境還是推薦使用style-loader 
  28.                     "css-loader"
  29.                 ], 
  30.             }, 
  31.         ], 
  32.     }, 
  33.     plugins: [ 
  34.         new HtmlWebpackPlugin({ 
  35.             template:"index.html" 
  36.         }), 
  37.         new MiniCssExtractPlugin({ 
  38.             filename: "css/built.css"
  39.         }), 
  40.         new OptimizeCssAssetsWebpackPlugin(), 
  41.         new VueLoaderPlugin(), 
  42.     ] 

2.5 模式

模式mode用于告知webpack需要使用對(duì)應(yīng)環(huán)境模式下的配置,可以是production、development或者none,當(dāng)然默認(rèn)是production。

使用mode模式有兩種方式,可以是在配置對(duì)象中設(shè)置mode選項(xiàng)。

  1. module.exports = { 
  2.     mode:"development" 

也可以是在package.json中的cli進(jìn)行配置:

  1. webpack --mode=development 

官方文檔中是這樣寫的:

選項(xiàng) 描述
development 會(huì)將 DefinePlugin 中 process.env.NODE_ENV 的值設(shè)置為 development. 為模塊和 chunk 啟用有效的名。
production 會(huì)將 DefinePlugin 中 process.env.NODE_ENV 的值設(shè)置為 production。為模塊和 chunk 啟用確定性的混淆名稱,FlagDependencyUsagePluginFlagIncludedChunksPluginModuleConcatenationPluginNoEmitOnErrorsPlugin 和 TerserPlugin 。
none 不使用任何默認(rèn)優(yōu)化選項(xiàng)

如果要根據(jù) webpack.config.js 中的 mode 變量更改打包行為,則必須將配置導(dǎo)出為函數(shù),而不是導(dǎo)出對(duì)象:

  1. ar config = { 
  2.   entry: './app.js'
  3.   //... 
  4. }; 
  5.  
  6. module.exports = (env, argv) => { 
  7.   if (argv.mode === 'development') { 
  8.     config.devtool = 'source-map'
  9.   } 
  10.  
  11.   if (argv.mode === 'production') { 
  12.     //... 
  13.   } 
  14.  
  15.   return config; 
  16. }; 

其它常用配置:

  1. module.exports = { 
  2.     // 解析模塊的規(guī)則: 
  3.     resolve: { 
  4.         // 配置 解析模塊路徑別名:可簡(jiǎn)寫路徑。 
  5.         alias: { 
  6.             "@": path.resolve(__dirname, "src"
  7.         }, 
  8.         // 配置 省略文件路徑的后綴名。默認(rèn)省略js和json。也是webpack默認(rèn)認(rèn)識(shí)的兩種文件類型 
  9.         extensions: [".js"".json"".css"], // 新加css文件 
  10.         // 告訴webpack解析模塊是去找哪個(gè)目錄 
  11.         // 該配置明確告訴webpack,直接去上一層找node_modules。 
  12.         modules: [path.resolve(__dirname, "../node_modules")], 
  13.     }, 
  14.     // devServer(開發(fā)環(huán)境下配置): 
  15.     devServer: { 
  16.         // 運(yùn)行代碼的目錄 
  17.         contentBase: path.resolve(__dirname, "build"), 
  18.         // 為每個(gè)靜態(tài)文件開啟gzip壓縮 
  19.         compress: true
  20.         host: "localhost"
  21.         port: 5000, 
  22.         opentrue, // 自動(dòng)打開瀏覽器 
  23.         hot: true, //開啟HMR功能 
  24.         // 設(shè)置代理 
  25.         proxy: { 
  26.             // 一旦devServer(5000端口)接收到/api/xxx的請(qǐng)求,就會(huì)用devServer起的服務(wù)把請(qǐng)求轉(zhuǎn)發(fā)到另外一個(gè)服務(wù)器(3000) 
  27.             // 以此來解決開發(fā)中的跨域問題 
  28.             api: { 
  29.                 target: "htttp://localhost:3000"
  30.                 // 發(fā)送請(qǐng)求時(shí),請(qǐng)求路徑重寫:將/api/xxx  --> /xxx (去掉/api) 
  31.                 pathRewrite: { 
  32.                     "^api"""
  33.                 }, 
  34.             }, 
  35.         }, 
  36.     }, 
  37.  
  38.     // optimization(生產(chǎn)環(huán)境下配置) 
  39.     optimization: { 
  40.         // 提取公共代碼 
  41.         splitChunks: { 
  42.             chunks: "all"
  43.         }, 
  44.         minimizer: [ 
  45.             // 配置生產(chǎn)環(huán)境的壓縮方案:js和css 
  46.             new TerserWebpackPlugin({ 
  47.                 // 多進(jìn)程打包 
  48.                 parallel: true
  49.                 terserOptions: { 
  50.                     // 啟動(dòng)source-map 
  51.                     sourceMap: true
  52.                 }, 
  53.             }), 
  54.         ], 
  55.     }, 
  56. }; 

3參考文章

webpack官方文檔 

Webpack5.0學(xué)習(xí)總結(jié)-基礎(chǔ)篇

 

責(zé)任編輯:武曉燕 來源: 前端萬有引力
相關(guān)推薦

2024-04-26 00:25:52

Rust語法生命周期

2021-08-05 06:54:05

流程控制default

2024-02-27 10:11:36

前端CSS@規(guī)則

2011-12-02 09:22:23

網(wǎng)絡(luò)管理NetQos

2010-08-25 01:59:00

2013-08-02 10:52:10

Android UI控件

2024-04-07 08:41:34

2024-08-26 10:01:50

2024-06-12 00:00:05

2013-10-16 14:18:02

工具圖像處理

2023-04-06 09:08:41

BPM流程引擎

2009-04-02 10:17:00

交換機(jī)產(chǎn)品選購(gòu)

2020-10-19 06:43:53

Redis腳本原子

2023-04-03 08:30:54

項(xiàng)目源碼操作流程

2023-09-26 00:29:40

CSS布局標(biāo)簽

2021-05-20 11:17:49

加密貨幣區(qū)塊鏈印度

2019-07-24 15:30:00

SQL注入數(shù)據(jù)庫(kù)

2020-02-21 08:45:45

PythonWeb開發(fā)框架

2021-10-29 09:32:33

springboot 靜態(tài)變量項(xiàng)目

2023-09-06 18:37:45

CSS選擇器符號(hào)
點(diǎn)贊
收藏

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

日干夜干天天干| 中文字幕第80页| 人人妻人人澡人人爽久久av| 亚洲一区不卡| www.国产一区| 午夜福利三级理论电影| 免费观看欧美大片| 国产精品高潮呻吟久久| 国产精品久久久久久久久久直播| 久久久黄色大片| 欧美在线亚洲综合一区| 亚洲精品少妇网址| 中文写幕一区二区三区免费观成熟| 日本黄色免费在线| 亚洲日本在线天堂| 秋霞在线观看一区二区三区| av网站免费大全| 三级精品在线观看| 欧美激情视频给我| 91激情视频在线观看| 91免费精品国偷自产在线在线| 色婷婷亚洲一区二区三区| 欧美美女黄色网| 内衣办公室在线| 成人精品一区二区三区四区 | 官网99热精品| 91麻豆一区二区| 久久精品观看| 91av视频在线免费观看| 欧美精品一区二区成人| 日韩在线观看| 亚洲天堂av综合网| 国产熟女高潮一区二区三区 | 亚洲免费网址| 欧美人与性动交a欧美精品| 婷婷综合在线视频| 国产成人ay| 日韩精品在线看| 污污污www精品国产网站| 嫩呦国产一区二区三区av| 欧美亚洲日本一区| 日本女优爱爱视频| 吉吉日韩欧美| 色狠狠综合天天综合综合| 国产午夜福利100集发布| 性爱视频在线播放| 亚洲人成伊人成综合网小说| 一区二区三区视频| eeuss影院在线播放| 久久久久国产精品人| 久久99导航| 少妇高潮一区二区三区99小说| 国产成人在线网站| 成人高清在线观看| 亚洲精品一区二区三区区别| 国产河南妇女毛片精品久久久| 成人h视频在线观看播放| 一级特黄特色的免费大片视频| 奇米精品一区二区三区在线观看一| 日本久久久a级免费| www.com亚洲| 日本不卡的三区四区五区| 日韩av免费一区| 最新国产中文字幕| 日韩成人精品在线观看| 国产欧美精品一区二区| 一本色道久久综合无码人妻| 精品系列免费在线观看| 亚洲一区二区日本| 亚洲av无码国产综合专区| 成人免费视频视频| 久久精品日产第一区二区三区精品版| 欧美色视频免费| 国产欧美一区二区三区在线老狼| 亚洲春色在线视频| 国产视频中文字幕在线观看| 亚洲一二三区在线观看| 啊啊啊一区二区| 精品网站在线| 欧美一区二区三区四区高清| 最新版天堂资源在线| 中文字幕亚洲影视| 日韩在线小视频| 欧美极品视频在线观看| 国产亚洲精品v| 国产精品网站入口| 国产高清不卡视频| 91在线免费播放| 一区二区成人国产精品| 影音先锋中文在线视频| 欧美午夜激情小视频| 欧美成年人视频在线观看| 日本亚洲视频| 国产一区二区三区四区福利| 丝袜 亚洲 另类 欧美 重口 | 97精品久久久| 中文字幕在线播放不卡| 成人一级黄色片| 性高潮久久久久久久久| 男女羞羞视频在线观看| 欧美性色aⅴ视频一区日韩精品| 激情久久综合网| 中文有码一区| 欧美激情视频一区二区| 中文字幕 国产| 成人黄色在线网站| 亚洲午夜精品国产| 九色porny自拍视频在线观看| 欧美精品乱人伦久久久久久| 精品人妻一区二区三区香蕉| 在线中文字幕第一区| 国产97在线|日韩| 亚洲精品久久久蜜桃动漫 | 日本不卡一区| ririsao久久精品一区| 欧美久久一区二区| 精品无码一区二区三区| 欧美黄色免费| 国产精品视频导航| 天堂v在线观看| 亚洲欧美日韩一区二区 | 欧美xnxx| 日韩国产一区三区| 久久久久久久久久一区二区三区| 蜜臀av性久久久久蜜臀av麻豆 | 182午夜视频| 国产一区二区三区日韩精品| 97在线视频免费观看| av免费观看在线| **欧美大码日韩| 国产又大又黄又粗又爽| 中文字幕av一区二区三区人| 97视频在线观看视频免费视频| h片在线免费看| 亚洲欧洲另类国产综合| 香港日本韩国三级网站| 精品国产成人| 日韩美女写真福利在线观看| 四虎在线视频| 精品人伦一区二区三区蜜桃免费| 中文字幕第六页| 亚洲综合色站| 91在线在线观看| av免费在线观| 日韩一区二区三区在线观看| 三级全黄做爰视频| 国产一区福利在线| 99久re热视频精品98| 999精品嫩草久久久久久99| 日韩视频在线一区| 国产又粗又猛又黄又爽无遮挡| 国产精品三级av| 99re精彩视频| 中文一区一区三区免费在线观看| 亚洲一区二区三区乱码aⅴ| 黄色在线播放网站| 日韩一区二区三区视频在线| 免费在线视频一区二区| 懂色一区二区三区免费观看| 免费毛片网站在线观看| 欧美91在线| 日韩免费观看网站| 高清美女视频一区| 欧美精品777| 久久久无码一区二区三区| eeuss国产一区二区三区 | 日韩欧美手机在线| 日韩精品第二页| 欧美精品在线免费播放| 国精产品一品二品国精品69xx| 亚洲国产成人av| 毛片网站免费观看| 日本va欧美va瓶| 看一级黄色录像| 国产一区二区三区亚洲| 欧美孕妇孕交黑巨大网站| av资源网在线观看| 日韩精品专区在线| 久久国产视频精品| 欧美激情一区二区三区不卡| 国产成人精品综合久久久久99| 亚洲激情不卡| 亚洲高清不卡一区| 在线日韩成人| 国产成人中文字幕| 99热国产在线| 亚洲美女自拍视频| 国产精品一区二区三区在线免费观看| 一区二区三区国产豹纹内裤在线 | 国产精品美女久久福利网站 | 91老师片黄在线观看| 色婷婷成人在线| 亚洲午夜久久久久久尤物| 欧美激情导航| 久久久精品区| 日本一区二区在线免费播放| 超碰在线caoporn| 亚洲色图美腿丝袜| 性欧美videos另类hd| 在线影视一区二区三区| 国产亚洲精久久久久久无码77777| 久久久五月婷婷| 免费观看污网站| 日本午夜精品视频在线观看| 成人精品视频在线播放| 日韩国产欧美一区二区| 狼狼综合久久久久综合网| 国模大尺度视频一区二区| 91国自产精品中文字幕亚洲| 老司机免费在线视频| 亚洲精品在线视频| 亚洲av无码乱码国产精品久久| 欧美主播一区二区三区| 国产精品成人aaaa在线| 中文字幕中文字幕一区| 熟女俱乐部一区二区| 成人网页在线观看| 一区二区三区四区毛片| 日韩影院精彩在线| 久久久久久免费看| 午夜精品久久久久99热蜜桃导演| 亚洲电影网站| 国产91精品对白在线播放| 国产一区福利视频| 视频精品一区| 成人免费午夜电影| a成人v在线| 国产精品成人一区| 伊人成综合网站| 91国产中文字幕| h片精品在线观看| 欧美风情在线观看| 超碰免费在线播放| 久久夜色精品国产亚洲aⅴ| av大片在线播放| 国产亚洲精品日韩| 免费在线黄色影片| 日韩电影大全免费观看2023年上| 日本精品一区二区在线观看| 日韩一区二区三| www.污视频| 日韩视频一区在线观看| 国产麻豆免费观看| 91精品国产一区二区三区香蕉| 91丨porny丨在线中文| 欧美日韩一区二区三区视频| 正在播放亚洲精品| 欧美视频一区二区三区在线观看| 波多野结衣影片| 欧美日韩在线播放三区四区| 中文字幕第99页| 欧美日韩精品二区第二页| 一区不卡在线观看| 7777精品伊人久久久大香线蕉完整版 | 国产传媒一区二区| 岛国精品一区| 久久久久久高清| 一区二区三区四区在线看| 麻豆亚洲一区| 日韩大片在线| 国产一二三四区在线观看| 欧美成人69av| 丁香花在线影院观看在线播放| 亚洲精华国产欧美| 日韩欧美精品在线观看视频| 日韩av在线发布| 日本高清久久久| 国产成人精品午夜视频免费 | 亚洲亚洲一区二区三区| 成人影片在线播放| 丝袜美腿综合| 亚洲永久激情精品| 欧美一区精品| 国产精品动漫网站| 蜜桃精品在线观看| 香蕉在线观看视频| 久久综合久久鬼色| 久久噜噜色综合一区二区| 一区二区三区欧美日韩| 毛片在线免费视频| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 一级全黄裸体免费视频| 亚洲国产成人精品女人久久久| 黄上黄在线观看| 久热精品视频在线| 中文字幕人成乱码在线观看| 国产美女精彩久久| 岛国av一区| 一级做a爰片久久| 最新国产乱人伦偷精品免费网站| 一本久道综合色婷婷五月| 国产九色精品成人porny| 少妇户外露出[11p]| 一区免费观看视频| 久久国产精品系列| 欧美高清你懂得| 青青草视频在线免费观看| 久久精品一本久久99精品| 午夜不卡影院| 亚洲最大福利视频| 国产99精品一区| 日韩伦理在线免费观看| 免费成人在线视频观看| 怡红院一区二区| 亚洲欧洲综合另类| 亚洲av无码不卡| 亚洲精品videossex少妇| 国产在线观看免费麻豆| 日韩美女毛茸茸| 精品久久ai电影| 欧洲美女和动交zoz0z| 玖玖国产精品视频| 久久久久亚洲无码| 亚洲激情自拍偷拍| 亚洲视频在线观看免费视频| 亚洲美女又黄又爽在线观看| 波多野结依一区| 亚洲影院色在线观看免费| 成人亚洲一区| 激情综合网婷婷| 成人av网站在线| 久久97人妻无码一区二区三区| 欧美日韩国产高清一区二区| 免费播放片a高清在线观看| 性欧美亚洲xxxx乳在线观看| 91嫩草国产线观看亚洲一区二区 | 岛国在线视频| 欧美一级片在线播放| 国产一级成人av| 97在线国产视频| 懂色av中文字幕一区二区三区| 亚洲怡红院在线观看| 欧美日韩国产一级二级| 免费资源在线观看| 日本久久91av| 国产真实有声精品录音| 成人一级片网站| 久久先锋影音av| www.久久久久久久| 亚洲精品天天看| 另类激情视频| 欧洲久久久久久| 青娱乐精品在线视频| 色欲狠狠躁天天躁无码中文字幕 | 精品久久久99| 国产精品国产成人国产三级| 中文字幕第一页在线播放| 中国日韩欧美久久久久久久久| 欧美三级精品| 先锋影音日韩| 国产在线乱码一区二区三区| 成人高潮免费视频| 日韩女优av电影| 黄色羞羞视频在线观看| 国产精品有限公司| 亚洲一区二区成人| 国产美女精品久久| 欧美色中文字幕| 欧美激情午夜| av噜噜色噜噜久久| 亚洲人成人一区二区三区| 中文字幕在线播放一区| 日韩欧美一区二区三区| 波多野结衣在线网站| 国产欧美精品一区二区| 综合在线一区| 国产原创剧情av| 日本精品视频一区二区三区| av电影在线播放高清免费观看| 91天堂在线视频| 亚洲精选成人| 99久久久无码国产精品衣服| 欧美一区二区三区在线看| 丰满的护士2在线观看高清| 乱色588欧美| 麻豆传媒一区二区三区| 久久精品久久精品久久| 亚洲少妇中文在线| 国产不卡精品在线| 六月婷婷在线视频| 中文字幕精品在线不卡| www.污视频| 国产精品h在线观看| 91精品国产成人观看| 国产+高潮+白浆+无码| 欧美亚州韩日在线看免费版国语版| 黄视频在线观看网站| 久久久福利视频| 黑人巨大精品欧美一区| 午夜偷拍福利视频| 这里精品视频免费| 一区二区三区在线免费看| 黄色一级二级三级| 一区二区三区精品视频| 高清美女视频一区| 国产在线精品一区| 国产在线看一区| 久久久国产免费| 欧美国产视频日韩| 日韩成人精品一区|