日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

vivado顶层模块怎么建_【第2040期】Node 模块化之争:为什么 CommonJS 和 ES Modules 无法相互协调...

發布時間:2025/3/11 javascript 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vivado顶层模块怎么建_【第2040期】Node 模块化之争:为什么 CommonJS 和 ES Modules 无法相互协调... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

又到周五了。今日早讀文章由Shopee@周雨楠翻譯授權分享。

@周雨楠,Shopee金融事業群前端研發,自主學習前端技術3年,喜愛各類數字媒體技術、創意設計,多次參與翻譯工作。

福利:有兩張門票,有需要的跟@情封聯系,先到先得。

正文從這開始~~

兩者可以進行適配,但是會徒增負擔。

在 Node 14 版本下,現存兩類語法:老式的 CommonJS (CJS) 的語法和新式的 ESM 語法(aka MJS)。CJS 使用 require() 和 module.exports;ESM 使用 import 和 export。

ESM 和 CJS 可以看作是完全不同的動物。表面上看,ESM 和 CJS 很像,但是他們的實現卻是大相徑庭。如果說一個是蜜蜂,那么另一個就是殺人蜂。

圖中是一只黃蜂和一只蜜蜂。其中一個好比 ESM,另一個好比 CJS,但是我永遠記不住哪個是哪個。圖片來源:wikimedia,wikimedia

無論是在 ESM 中使用 CJS 還是反過來,都是有可能的,但這是徒增負擔。

以下是一些規則,我會在后文中詳細解釋。

  • 在 ESM 代碼中無法使用 require();你只能?importESM代碼,比如:import{foo}from'foo'

  • CJS 代碼無法使用如上所示的靜態 import 語句;

  • ESM 代碼可以 import CJS 代碼,但是只能使用“默認導入(default import)”語法,如?import_from'lodash',而不是“命名導入(named import)”語法,如?import{shuffle}from'lodash',因此如果 CJS 代碼使用了命名導出,就會很麻煩;

  • ESM 代碼可以 require() CJS 代碼,即便是命名導出也可以,但是明顯不值得大費周章,因為這樣需要更多的框架平臺,而且最不好的一點就是諸如 Webpack 和 Rollup 這樣的包,不知道,也不會知道怎么處理含有 require() 的 ESM 代碼;

  • CJS 是默認允許使用的,而 ESM 模式則需要你選擇性加入。通過把代碼文件從 .js 重命名為 .mjs 就可以啟用 ESM 模式。除此之外,在 package.json 中設置 "type": "module",然后就可以通過把 .js 重命名為 .cjs 選擇退出 ESM 模式。(你甚至可以在某一個子目錄下添加一個只有一行 {"type": "module"} 的 package.json 文件來調整。)

這些條條框框太痛苦了。對于很多使用者,尤其是 Node 入門者來說是更為痛苦的,這些規則壓根不可理喻。(不慌,這篇文章里我都將解釋清楚。)

很多 Node 生態的關注者已經發現這些規則是由于先前領導的失敗,甚至是對 ESM 的敵意導致的。不過正如下文所說,所有的規則都有其存在的意義,這使得未來想要打破這些規則也很難。

我為開源庫的開發者整理了三條指南用于借鑒:

  • 為你的開源庫提供一個 CJS 的版本;

  • 為你的 CJS 版本提供一個較淺的 ESM 封裝;

  • 在你的 package.json 文件中添加一個 exports 的映射。

一切就會好起來了。

背景介紹:CJS 是什么?ESM 又是什么?

從 Node 初見以來,Node 中的模塊就是以 CommonJS 模塊來寫的。我們使用 require() 來引入它們。當實現了一個模塊并且想讓他人使用時,我們就會定義 exports 內容,要么通過設置 module.exports.foo='bar' 進行“命名導出”,要么通過設置 module.exports = 'baz' 進行“默認導出”。

這是一個 CJS 使用命名導出的例子,util.cjs 有一個命名為 sum 的導出函數。

// 文件名: util.cjs

module.exports.sum = (x, y) => x + y;

// 文件名: main.cjs

const {sum} = require('./util.cjs');

console.log(sum(2, 4));

這是一個 CJS 在 util.cjs 中使用默認導出的例子。默認導出是不指定名字的,而是由使用 require() 的模塊自行定義名稱。

// 文件名: util.cjs

module.exports = (x, y) => x + y;

// 文件名: main.cjs

const whateverWeWant = require('./util.cjs');

console.log(whateverWeWant(2, 4));

在 ESM 代碼中,import 和 export 是這類語言的一部分。和 CJS 類似,它也有兩套不同的語法進行命名導出和默認導出。

這是一個 ESM 使用了命名導出的例子,util.mjs 有一個命名為 sum 的導出函數。

// 文件名: util.mjs

export const sum = (x, y) => x + y;

// 文件名: main.mjs

import {sum} from './util.mjs'

console.log(sum(2, 4));

這是一個 ESM 在 util.mjs 中設置了默認導出的例子。和 CJS 中一樣,默認導出是沒有名字的,但是使用了 import 的模塊會自行定義名稱。

// 文件名: util.mjs

export default (x, y) => x + y;

// 文件名: main.mjs

import whateverWeWant from './util.mjs'

console.log(whateverWeWant(2, 4));

ESM 和 CJS 是截然不同的動物

在 CommonJS 中,require() 是同步的。它不會返回一個 promise 或者調用回調函數。require() 從硬盤(或者甚至從網絡)中進行讀操作,然后立刻執行代碼。這樣就會使得它自行進行 I/O 或產生其它副作用,然后返回任何設置在 module.exports 上的值。

在 ESM 中,模塊加載器是在異步階段執行的。在第一個階段,它會做詞法分析,在不執行導入代碼的情況下檢測是否存在 import 和 export 的調用。在詞法轉換階段,ESM 加載器能夠立刻檢測到命名導入中的拼寫錯誤,并且在不執行依賴代碼的情況下拋出異常。

ESM 加載器接下來異步地下載并轉譯任何引入的代碼,然后對引入的代碼進行編碼,根據依賴建立出一個“模塊圖(module graph)”,直到最后它發現某塊代碼沒有引入任何東西。最后,這一塊代碼被允許執行,然后所有這一塊代碼所依賴的代碼被允許執行,依次類推。

ES 模塊圖中所有具有“兄弟”關系的代碼都是并行下載的,但是是按照次序執行的。這一次序由加載器指定并確保執行。

CJS 是默認模式,因為 ESM 改變了很多東西

ESM 改變了 JavaScript 中的很多東西。ESM 語法默認使用嚴格模式(use strict),它們的 this 不指向全局對象,作用域也有差異,等等。

這就是為什么甚至在瀏覽器中 標簽默認也不是 ESM 模式的。要添加一個 type="module" 屬性來選擇進入 ESM 模式。

從默認的 CJS 切換到 ESM 在向前兼容性方面存在很大斷層。(最近炙手可熱的 Node 替代品 Deno 將 ESM 作為默認,但是其結果就是 Deno 的生態環境要從零開始搭建。)

CJS 無法 require() ESM,因為有頂層的 await 限制

CJS 無法 require() ESM 的最簡單原因就是 ESM 可以進行最外層的 await ,但是 CJS 代碼不行。

頂層 await 能夠讓我們在 async 函數的外層使用 await 關鍵字,也就是處于“頂層”。

ESM 的多階段加載器使得 ESM 實現頂層 await 時不會搬起石頭砸自己的腳。從V8團隊的博客文章中引用一些話:

也許你讀過 Rich Harris 寫的臭名昭著的 gist,一開始就羅列了一些所擔心的關于頂層 await 的問題,并且迫切希望 JavaScript 語言不要實現出來。其中的一些問題是:

  • 頂層 await 會阻塞執行;

  • 頂層 await 會阻塞資源獲取;

  • CommonJS 模塊沒法再做清晰的內嵌了。

第三階段版本的提議也強調了這些問題:

  • 因為兄弟關系的代碼是可以執行的,因此最終沒有造成阻塞;

  • 頂層 await 出現在模塊圖的執行階段。在此階段,所有的資源都已經獲得并且建立了鏈接,因此是不存在阻塞資源獲取風險的;

  • 頂層 await 僅僅限制在 ESM 模塊中使用,CommonJS 的模塊或者代碼中明確沒有對此的支持。

(Rich 現在已經同意了當前頂層 await 的實現。)

因為 CJS 不支持頂層 await,那么從 ESM 的頂層 await 轉譯為 CJS 就是不可能的。在 CJS 中怎么重寫這段代碼呢?

export const foo = await fetch('./data.json');

有點打擊人,因為絕大多數 ESM 代碼不會去使用頂層 await,但是正如這一條 thread 中的一個評論者所說,“我并不認為設計系統的時候,單單假定一些功能不會被使用,是一條可行的路。”

如何在 ESM 中進行 require() 的問題,在這條 thread 上依舊激烈爭論著。(請看完整條 thread 和其中關聯的討論后再進行評論。如果你深入研究,你就會發現頂層 await 并不是唯一一個有著問題的情形。你覺得如果你同步 require 一個能夠異步 import 一些能夠同步 require ESM 的 CJS 的 ESM 會發生什么呢?你就會得到像斑馬條紋那樣一會同步一會異步的能整死人的東西。頂層 await 就是棺材板上的最后一根釘子,也是最容易解釋的一個。)

通過對那些討論進行評審,似乎我們不再會在 ESM 里做 require() 了。

CJS 能夠 import() ESM,但是這并不好

目前為止,如果你在寫 CJS,你想 import 一段 ESM 代碼,你得使用異步動態的 import()。

(async () => {

const {foo} = await import('./foo.mjs');

})();

看上去……還行,只要別有 exports 就行。如果你需要做 exports,你就得導出一個 Promise,這對于你的用戶來說會是一個大大的不便。

ESM 無法引入命名引出的 CJS,除非 CJS 代碼脫離執行順序

你可以這樣寫:

import _ from './lodash.cjs'

但是你沒法這樣寫:

import {shuffle} from './lodash.cjs'

這是因為 CJS 代碼會在執行的時候計算它們的命名導出,而 ESM 的命名導出必須在轉譯階段才會被計算。

對我們而言,幸運的是有曲線救國的方式!這個曲線十分惱人,但是還是能做的。我們這樣引入 CJS 代碼就可以了:

import _ from './lodash.cjs';

const {shuffle} = _;

這樣做沒什么特別的弊端,而且感知了 ESM 的 CJS 庫甚至能夠提供它們自己的 ESM 包裹層,為我們封裝了這樣的寫法框架。

完全沒問題!要是能更好點就好了。

脫離執行順序也能工作,但是有更壞的結果

有一部分的人提出,在 ESM 引入之前執行 CJS 的引入是脫離了執行順序的。這樣一來,CJS 的命名導出會和 ESM 的命名導出在同時計算。

但是這樣就會產生一個新的問題。

import {liquor} from 'liquor';

import {beer} from 'beer';

如果 liquor 和 beer 最初都是 CJS,把 liquor 從 CJS 換成 ESM 就會使得順序從 liquor, beer 變成 beer, liquor,那么如果 beer 中依賴 liquor 中先執行的內容,這樣就會令人嘔吐地有問題。

脫離順序的執行依然在爭論當中, 雖然幾周之前這個話題就幾乎沒啥聲音了。

動態模塊能拯救,但是它們的星號有毒

有一個替代方案的提議,既不需要脫離執行順序,也不需要做封裝,稱作動態模塊(Dynamic Modules)。

在 ESM 中,導出的地方會靜態定義所有命名導出。在動態模塊方案下,引入的地方會在 import 中定義導出的名字。ESM 加載器一上來會信任動態模塊(CJS 代碼)能夠提供所有需要的命名導出,如果之后有地方不滿足,則再拋出一個異常。

然而,動態模塊需要 JavaScript 語言發生一些變化,這些變化需要 TC39 語言委員會進行同意。而他們不同意。

ESM 代碼可以 export*from'./foo.cjs',這意思是重新把 foo 中導出的所有名字進行導出。(稱為“星號導出(star export)”。?)

然而,如果我們從動態模塊中星號導出,加載器就無法知道導出的是什么。

動態模塊的星號導出在規范合格性上也產生了問題。比如, export*from'omg';export*from'bbq'; 應該拋出異常,因為 omg 和 bbq 都導出了相同名字的 wtf。允許這些命名能夠被用戶/消費者進行定義,意味著這個合法性校驗階段需要被滯后處理或者忽略。

動態模塊的提倡者提議在動態模塊中禁止星號導出方式,但是 TC39 拒絕了這一提議。一個 TC39 的成員把這個提議比作是“語法毒(syntax poisoning)“,因為星號導入在動態模塊中就像是被“下毒”了一樣。

這個帶毒的星星對你很生氣。圖片來源:seekpng

在我看來,我們已經居住在一個語法毒的世界里了。在 Node 14 版中,命名導出就是被下毒的,在動態模塊中,星號導入也是被下毒的。因為命名導出極其普遍而星號導出相對罕見,動態模塊會在生態中減少語法毒的成分。

這并不意味著動態模塊已經窮途末路。案上依然有提議,讓所有 Node 模塊都成為動態模塊,甚至帶上純 ESM 模塊,并且在 Node 中棄用 ESM 的多階段加載器。讓人眼前一亮的是,這樣并不會產生用戶可見的影響,除了一些可能發生的輕微啟動性能下降。ESM 多階段加載器是在網絡緩慢的情況下加載代碼而設計的。

不過我依然不覺得會這么走運。Github 上關于動態模塊的 issue 最近被關閉了,因為去年沒有關于動態模塊的討論。

還有一個方案懸而未決,那就是做一次充分努力的嘗試,把 CJS 模塊進行詞法分析,從而檢測出導出內容,但是這個方案不可能在 100% 的用例中使用。(最新的 PR 在 npm 前 1000 的模塊中只有 62% 正常工作。)因為這種啟發式的東西太不可靠,一些 Node 模塊工作組成員是反對的。

ESM 可以 require(),但是很可能并不值得

require() 默認并不在 ESM 代碼范疇內,不過你可以輕松把它找回。

import { createRequire } from 'module';

const require = createRequire(import.meta.url);

const {foo} = require('./foo.cjs');

這個方法的問題在于它沒能幫多大忙。實際上也就比做一個默認導入然后解構多了幾行代碼。

import cjsModule from './foo.cjs';

const {foo} = cjsModule;

另外,像 Webpack 和 Rollup 這樣的打包工具并不知道如何處理 createRequire 這樣的模式,所以意義何在呢?

如何創建一個良好的包含了 CJS 和 ESM 的“二重包”

如果你手上至今都維護著一個庫,需要支持 CJS 和 ESM,那么就給你的用戶做點好事,按照上文的方針建造一個“二重包”,能夠在 CJS 和 ESM 下都良好工作。

給庫提供一個 CJS 的版本

這是為了方便你的 CJS 用戶。同時也確保了你的庫能夠在 Node 的早期版本中正常工作。

如果你使用的是 TypeScript 或者其它最終轉譯成 JS 的語言,那么就轉譯成 CJS 吧。

給 CJS 提供一個淺的 ESM 封裝

注意,給 CJS 庫寫一個 ESM 包裹層是不難的,但是給 ESM 庫寫一個 CJS 包裹層就不可能了。

import cjsModule from '../index.js';

export const foo = cjsModule.foo;

把 ESM 包裹層 放到一個 esm 的子目錄下,同時放入一個一行的 package.json,里面只放 {"type": "module"}。(你可以重命名你的包裹層文件為 .mjs,在 Node 14 下是正常的,但是有的工具和 .mjs 搭配不好,因此我傾向于使用一個子目錄。)

避免二次轉譯。如果你是在從 TypeScript 做轉譯,你可以轉譯成 CJS 和 ESM,但是這就會帶來一個潛在的危害,用戶可能偶然既 import 了你的 ESM 代碼,又 require() 了你的 CJS 代碼。(比如,假設一個庫 omg.mjs 依賴于 index.mjs,另一個庫 bbq.cjs 依賴于 index.cjs,然后你還既要依賴 omg.mjs 又要依賴 bbq.cjs。)

Node 自身會給模塊做去重,不過 Node 并不知道你的 CJS 和 ESM 其實是”相同的“文件,于是你的代碼就會執行兩次,并且保留你的庫狀態的兩份拷貝。這就能引發各種奇異的 Bug。

給你的 package.json 添加一個 exports 映射

就像這樣:

"exports": {

"require": "./index.js",

"import": "./esm/wrapper.js"

}

注意:添加一個 exports 映射永遠要作為“語義化版本控制中的主要層級”的重大變化。默認情況下,你的用戶能夠進入你的包,然后 require() 任何他們想要的代碼,甚至是你想要變成內部層的文件。exports 映射確保了用戶只能 require/import 你刻意暴露出來的入點文件。

這就快是一個好的東西了!但是這也是一個重大變化。

如果你跟著你的用戶進行 import 或者 require() 你的模塊里的其他文件,你也可以分開來設置入點。具體請查閱 ESM 的 Node 文檔。

始終要在導出映射目標中包含文件擴展名。寫成 "index.js" 而不是 "index" 或者一個類似 "./build" 的目錄。

如果你遵循了上述的方針,你的用戶就會很安分。一切都會變得很安分。

關于本文 譯者:@周雨楠 譯文:https://mp.weixin.qq.com/s/CxlolXUpK02wZbRNah_ZQA 作者:@Dan Fabulich 原文鏈接:https://redfin.engineering/node-modules-at-war-why-commonjs-and-es-modules-cant-get-along-9617135eeca1

為你推薦

【第1994期】ES11來了

【第1899期】調研 Federated Modules,應用秒開,應用集方案,微前端加載方案改進等

歡迎自薦投稿,前端早讀課等你來

總結

以上是生活随笔為你收集整理的vivado顶层模块怎么建_【第2040期】Node 模块化之争:为什么 CommonJS 和 ES Modules 无法相互协调...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产亚洲精品综合一区91 | 久久精品日本啪啪涩涩 | 日本中文不卡 | a视频在线观看免费 | 国产精品久久久久久久久毛片 | 天天综合视频在线观看 | 国产精品色视频 | 久久久香蕉视频 | 99在线观看免费视频精品观看 | 欧美黄色成人 | 伊人婷婷激情 | 精品一区二区6 | 精品国产乱码久久久久久1区二区 | 日韩精品大片 | 黄色在线观看www | 在线观看aa | 国产精品亚 | 午夜影视剧场 | 欧美一二在线 | 天天色天天操天天爽 | 国产在线观| 国产一区在线观看免费 | 免费成人在线网站 | 99久久精品免费看国产一区二区三区 | 欧美性黑人 | 欧美午夜精品久久久久久浪潮 | 青青草华人在线视频 | 右手影院亚洲欧美 | 欧洲成人av| 日本精品视频网站 | 国产在线观看午夜 | 亚洲人成在线观看 | 免费av 在线 | 在线天堂中文www视软件 | 日韩一区二区三免费高清在线观看 | 中文字幕一区二区三区四区久久 | 中文字幕 在线 一 二 | 在线观看国产成人av片 | 欧美激情视频一区二区三区 | 一区二区三区四区精品 | 四虎在线免费观看 | 五月婷婷一区 | 亚州国产精品久久久 | 亚洲aⅴ乱码精品成人区 | 亚洲精品美女在线 | 国产精品久久久久一区二区 | 久久精品日韩 | 免费网站看v片在线a | 日韩免费小视频 | 免费在线观看黄色网 | 中文字幕亚洲在线观看 | 国产日韩欧美视频 | 精品美女国产在线 | 国产91电影在线观看 | 中文字幕在线日本 | 色婷婷av国产精品 | 手机在线看片日韩 | 天天爱天天舔 | 久久精品爱爱视频 | 国产第页 | 少妇精品久久久一区二区免费 | 在线一区二区三区 | av免费试看 | www.亚洲| 美女免费视频网站 | 日日操狠狠干 | 成人欧美一区二区三区在线观看 | 国产精品久久久久久久久搜平片 | 国产日韩欧美自拍 | 国产精品美女久久久久久2018 | 久久国语露脸国产精品电影 | 超碰日韩在线 | 国产系列 在线观看 | 国产一区二区免费在线观看 | 日韩小视频网站 | 98久9在线 | 免费 | 九色视频网站 | 黄色免费大全 | 爱情影院aqdy鲁丝片二区 | 日本狠狠色 | 国内精品视频在线播放 | 欧美日韩国产精品久久 | 日韩精品视频在线观看免费 | 欧美小视频在线观看 | 国产精品美女久久久久久2018 | 黄色视屏在线免费观看 | 国产白浆视频 | 婷婷成人亚洲综合国产xv88 | 色偷偷网站视频 | a级国产毛片 | 欧美最猛性xxxxx亚洲精品 | 国产成人精品一区二区在线观看 | 亚洲色图美腿丝袜 | 久久五月天色综合 | 亚洲高清国产视频 | av三区在线 | 六月丁香激情网 | 欧美一级片在线免费观看 | 久久精品在线免费观看 | 久久大香线蕉app | 亚洲精品在线观看av | 欧美综合色在线图区 | 日韩一二区在线观看 | 久久久久综合视频 | 特级西西444www大胆高清无视频 | 人人舔人人爽 | 国产女人18毛片水真多18精品 | 激情欧美一区二区三区免费看 | 成人毛片一区二区三区 | 中文字幕国产在线 | 黄色小网站在线 | 97超碰人人澡人人 | 日韩在线视频播放 | 五月婷婷在线视频 | 中文字幕精品三区 | 999成人免费视频 | 91成人免费看 | 婷婷日日 | 久久久久国产精品免费免费搜索 | 涩av在线 | 国产成人精品电影久久久 | 中文字幕免费一区 | 成年人在线视频观看 | 国产成人久久av免费高清密臂 | 丰满少妇久久久 | 天天亚洲 | 亚洲精品久久久蜜桃 | 久久婷婷久久 | 天天操天天干天天插 | 人人狠狠综合久久亚洲婷 | 国产成人精品久久亚洲高清不卡 | 久久精品亚洲精品国产欧美 | 国产99久久久久 | 欧美日韩国产网站 | 亚洲精品久久久久久国 | 天堂中文在线播放 | 国产精品久久综合 | 黄色av电影免费观看 | 国产日韩精品久久 | 国产资源在线观看 | 欧美精彩视频在线观看 | 69视频国产 | 日韩免费中文 | av国产网站 | 波多野结衣视频一区 | 91av在线视频免费观看 | 亚洲免费高清视频 | aaa亚洲精品一二三区 | 国产婷婷久久 | 天天操狠狠操 | 日韩在线视频免费播放 | 亚洲精品国 | 91国内在线 | 91大神一区二区三区 | 成人午夜影院在线观看 | 99久精品视频 | 中文字幕 成人 | 99精品在线免费观看 | 91热精品 | 中文字幕在线播放日韩 | 亚洲第一中文网 | 国产综合香蕉五月婷在线 | 在线v片免费观看视频 | 在线a人片免费观看视频 | 国产在线播放观看 | 97国产在线播放 | 亚洲妇女av | a黄色一级 | 偷拍久久久 | 天天操天天射天天添 | 一区二区视频在线看 | 精品一二区 | 在线免费观看涩涩 | 97香蕉久久超级碰碰高清版 | 日日夜夜天天干 | 综合激情 | 亚洲综合欧美精品电影 | 国产成人免费高清 | 中文字幕免费观看全部电影 | 亚洲区视频在线 | 三级黄色网络 | 精品99在线 | 亚洲精品在线播放视频 | 亚洲视频免费在线观看 | 久久综合视频网 | 色综合久久五月 | 中文字幕精品久久 | 亚洲在线| 亚洲国产美女久久久久 | 五月天中文字幕mv在线 | av观看在线观看 | 日韩欧美精品一区二区三区经典 | 亚洲欧美日韩国产 | 色婷婷av一区二 | 国产色视频一区二区三区qq号 | 在线免费观看黄色 | 美女一二三区 | 日韩av午夜在线观看 | 日日干夜夜爱 | 91麻豆视频网站 | www.国产在线观看 | 黄网站免费久久 | 五月天婷婷在线视频 | 丁香资源影视免费观看 | 91在线视频精品 | 午夜精品久久久久久久99无限制 | 97在线免费观看视频 | 婷婷六月天天 | 亚洲精品免费在线观看视频 | 91av视频播放| 99色资源| www久久精品 | 欧美va天堂在线电影 | 国产精品视频线看 | 亚洲国产wwwccc36天堂 | 日本精品中文字幕在线观看 | 91看片在线免费观看 | 国产精品国产三级国产 | 丁香六月婷婷开心婷婷网 | 欧美成人影音 | 996久久国产精品线观看 | 久久久国产精品成人免费 | 久久久久久久久精 | 久久久精品 一区二区三区 国产99视频在线观看 | 国产精品久久久久久久免费 | 久久视频 | 视频一区视频二区在线观看 | 天天射天天舔天天干 | 国产精品一区二区三区在线看 | 五月婷婷综合在线观看 | 免费一级片久久 | 成人av资源| 亚洲欧美激情插 | 五月宗合网 | 午夜精品视频一区二区三区在线看 | 91在线91| 婷婷色在线视频 | 激情久久久 | 在线观看www91| 亚洲国产三级在线观看 | a级国产乱理论片在线观看 伊人宗合网 | 国外av在线 | 国产精品美女999 | 国产精品1区2区 | 四虎影视成人 | 久久国产精品久久国产精品 | 99精品视频免费在线观看 | 久久精彩 | 久久久久久久久久久免费视频 | 国产a级片免费观看 | 天天操欧美 | 色视频国产直接看 | 91夜夜夜 | 在线精品视频在线观看高清 | 91大神精品视频 | 久久伦理影院 | 精品国产一区二区三区av性色 | av免费观看在线 | 国产中文字幕一区 | 成人国产精品一区二区 | 成人av免费在线观看 | 国产精品人成电影在线观看 | 啪啪小视频网站 | 久久精品99国产精品酒店日本 | 婷婷久久一区二区三区 | 天天鲁一鲁摸一摸爽一爽 | 久久久久亚洲精品中文字幕 | 亚洲精品资源 | 精品一区二区三区四区在线 | 色在线视频 | 中文字幕在线一区观看 | 99理论片 | 久久激情五月婷婷 | 天天插综合网 | 国产黄色一级大片 | 国产视频 亚洲精品 | 久久欧美精品 | 香蕉视频在线免费 | 国产精品久久久久久久午夜 | 久久视频这里只有精品 | 日韩精品久久久久久久电影竹菊 | 久久中文网 | 国产一区二区在线观看免费 | av中文字幕不卡 | 国产精久久久久久久 | 天天干天天干天天操 | 18+视频网站链接 | 亚洲黄色免费电影 | 色综合久久综合网 | 五月天婷婷在线视频 | 成人h视频在线播放 | 天天色宗合 | 国产精品永久久久久久久久久 | 国产一区福利 | 日韩在线电影一区二区 | 一区二区视频在线播放 | 中文字幕一区二区三区视频 | 免费a级毛片在线看 | 亚洲国产日韩欧美在线 | 久久官网 | 欧美日韩中文国产一区发布 | 午夜少妇一区二区三区 | 操操日日| 日韩免费中文字幕 | 精品国产乱码一区二区三区在线 | 中文字幕黄网 | 国产69久久 | 97在线视频免费观看 | 欧洲成人av | 久久,天天综合 | 4438全国亚洲精品在线观看视频 | 国产精品一二三 | 成人日批视频 | 99精品视频播放 | 激情综合网五月激情 | 久草在线视频在线观看 | 一区二区三区四区五区在线 | 国产成人精品电影久久久 | 97色资源| 色成人亚洲 | 91成人精品一区在线播放69 | 中文字幕视频三区 | 91最新在线 | 精品美女久久久久久免费 | av电影免费在线播放 | 国产在线欧美 | 亚洲国产影院 | 日韩中文幕| 国产老熟 | 日韩乱理 | 久久久久久久久免费 | 五月婷视频| 久久综合色一综合色88 | 久久久久亚洲精品中文字幕 | 日韩激情片在线观看 | 中文字幕国产在线 | 狠狠色丁香久久婷婷综合_中 | 国产美女网 | 国产精品a久久 | 久久久久亚洲天堂 | 久久国产亚洲 | 国产亚洲一级高清 | 亚洲欧美视频在线播放 | 国产免费成人 | 狠狠色狠狠色综合日日小说 | 最近中文字幕免费av | 在线免费观看涩涩 | 亚洲一区二区麻豆 | 亚洲高清不卡av | 日韩一区二区在线免费观看 | 日本高清久久久 | 在线亚洲人成电影网站色www | 国产视频一区精品 | 综合中文字幕 | 五月综合网 | 三级黄色免费 | 亚洲成人国产精品 | 国产精品av电影 | 片网站 | 美女福利视频一区二区 | 天天天天天干 | 91av短视频| 欧美日韩国产一二三区 | 亚洲japanese制服美女 | 午夜神马福利 | 91秒拍国产福利一区 | 日韩在线观看第一页 | av中文字幕网 | 美女视频黄是免费的 | 国产精品理论片在线播放 | 亚洲一级理论片 | 国产亚洲精品久久久久久久久久久久 | 国产精品久久精品国产 | 久久久一本精品99久久精品 | 色九九在线 | www.色com| 国产精品久久人 | 国产精品一区二区三区免费看 | av在线电影网站 | 亚洲欧美视频网站 | 国产在线精品播放 | 久久免费视频6 | 激情五月婷婷综合 | 国产免码va在线观看免费 | 在线黄频| 天天综合网 天天综合色 | 久久精品网站视频 | 91精品欧美一区二区三区 | 91视频在线网址 | 97超碰在线视 | 国产日产高清dvd碟片 | 久草免费新视频 | 97在线免费 | 国产精品精品国产 | 久久国产精品视频观看 | 激情伊人五月天 | 蜜臀av性久久久久av蜜臀妖精 | 亚洲欧美国产视频 | 亚洲婷婷综合色高清在线 | av不卡中文字幕 | 亚洲午夜久久久影院 | 在线小视频 | 又黄又爽又湿又无遮挡的在线视频 | 国产99区 | 免费日韩 精品中文字幕视频在线 | 成人av电影免费在线观看 | 视色网站 | 在线免费日韩 | 国产麻豆剧果冻传媒视频播放量 | 日韩视频一二三区 | 婷婷在线精品视频 | 手机看片福利 | 日本中文字幕在线免费观看 | 久久狠狠婷婷 | 欧美日韩视频在线一区 | 日本女人的性生活视频 | 国内精品在线一区 | 日日插日日干 | 黄色av网站在线观看免费 | 五月综合网 | 91免费高清视频 | 97视频在线观看播放 | 一级片视频在线 | www.久久成人 | 国产精品黄色 | 很黄很色很污的网站 | 亚洲成人高清在线 | 一区久久久| 美女视频黄免费的 | 日韩欧美综合在线视频 | 亚洲男男gaygay无套 | 久草在线视频资源 | 国产精品乱码在线 | 91av在线视频免费观看 | 精品一区二区精品 | 高清av免费看 | 一区二区三区四区精品 | 亚洲精品乱码白浆高清久久久久久 | 国内精品视频久久 | 国产精品成人免费精品自在线观看 | 最近久乱中文字幕 | 久久人人爽人人爽人人片av免费 | 不卡视频国产 | 亚洲不卡在线 | 999久久久精品视频 日韩高清www | 亚洲高清免费在线 | 亚洲一区日韩精品 | 久久精品2| 久久99精品波多结衣一区 | 欧美性色综合 | 午夜视频色| 最近免费中文字幕大全高清10 | 日韩午夜电影院 | 在线观看黄色大片 | 日韩精品亚洲专区在线观看 | 中文字幕精品www乱入免费视频 | 欧美va在线观看 | 亚洲精品资源在线观看 | 中文字幕日韩一区二区三区不卡 | 亚洲 欧美 国产 va在线影院 | 亚洲va在线va天堂va偷拍 | 成年人电影免费在线观看 | 日韩成人邪恶影片 | 国产人免费人成免费视频 | 久久天堂网站 | av免费片| av在线播放中文字幕 | 国产精品在线看 | 欧美日韩精品影院 | 色视频在线免费 | 中文字幕日韩在线播放 | 国产精品影音先锋 | 日韩特黄一级欧美毛片特黄 | 国产精品久久久久aaaa九色 | 99爱视频在线观看 | 免费观看特级毛片 | 天天干天天玩天天操 | 日韩丝袜在线观看 | 欧美精品乱码久久久久久 | 碰超在线 | 国产中文字幕在线看 | 亚洲精品网站 | 96在线| 久久久av免费 | 日韩免费在线观看网站 | 深夜福利视频在线观看 | 国产黄免费在线观看 | 亚洲精品小视频 | 亚洲免费视频观看 | 成人午夜电影在线观看 | 干干日日 | 日本精品久久久久 | 99这里都是精品 | 免费高清av在线看 | 国产视频观看 | 欧美a视频在线观看 | 日韩在线观看一区二区三区 | 婷婷色网视频在线播放 | 综合久久久久久久久 | 成人国产精品久久久 | 久久精品亚洲 | 亚洲国产精品va在线看黑人 | 五月婷婷一级片 | 国产精品欧美久久久久天天影视 | 亚洲va欧美va人人爽 | av电影在线免费观看 | 高清视频一区二区三区 | 国产免费a | 中文字幕在线视频网站 | 丁香资源影视免费观看 | 一级精品视频在线观看宜春院 | 中文字幕免费成人 | 国产精品网红直播 | 日韩国产高清在线 | 99精品99 | www.成人久久| av黄色av| 精品视频123区在线观看 | 亚洲激情五月 | 在线一区av | 高清国产一区 | 五月的婷婷 | 国产精品淫片 | 婷婷激情5月天 | www.亚洲激情.com | 91免费版在线 | 在线观看第一页 | 日本黄色免费在线观看 | 日韩和的一区二在线 | 精品久久精品久久 | 久久国产品 | 香蕉久草 | 日日干干夜夜 | 日韩在线观看视频一区二区三区 | 亚洲国产精品va在线看黑人动漫 | 欧美成人播放 | 黄色av在| 在线亚洲成人 | 国产日韩精品一区二区三区在线 | 色婷婷久久久综合中文字幕 | 免费看网站在线 | 91插插视频 | 91精品老司机久久一区啪 | 欧美特一级 | 久久久久久免费毛片精品 | www五月婷婷 | 欧美91精品国产自产 | 999成人网| 日韩国产精品一区 | 97超级碰碰碰视频在线观看 | 午夜天使| 在线观看网站av | 亚洲电影免费 | 中文字幕在线播放一区二区 | 五月天天色 | 久久久久久久看片 | 婷婷丁香激情综合 | 美女网色 | 久久免费观看视频 | 日本黄色免费在线观看 | 久久一精品 | 日本中文字幕系列 | 91在线中文 | 国产精品福利视频 | 亚洲精品综合一区二区 | 国产精品成人品 | 久久久精品网 | 日韩一二三 | 天天夜夜操 | 国产精品日韩久久久久 | 99精品在线观看视频 | av三级av | 精品久久久久久久久久久久 | 欧美aa级 | 国产高清绿奴videos | 91x色| 九九久久成人 | 丁香一区二区 | 日日麻批40分钟视频免费观看 | 人人爽人人看 | 国产在线不卡视频 | 亚洲高清视频在线观看 | 99久久精品费精品 | 免费高清看电视网站 | 亚洲天天在线 | 国产成人香蕉 | 久久久久久草 | 日日躁天天躁 | 911免费视频| 啪嗒啪嗒免费观看完整版 | 久久久网站 | 国产原创av在线 | h视频在线看 | 91看片在线免费观看 | 国产午夜在线观看视频 | 日韩有码在线观看视频 | 免费看三级网站 | 久久久久久久久久网 | 欧美,日韩| 亚洲精品午夜aaa久久久 | 99国产精品免费网站 | 国产精品久久久久久一二三四五 | 久久久免费精品国产一区二区 | 91av电影在线 | 日韩精品一区二区三区电影 | 国产区av在线 | 波多野结衣资源 | 国产专区视频在线观看 | 日韩av伦理片 | caobi视频| 国产精品96久久久久久吹潮 | 国产精品毛片一区二区三区 | 99在线精品视频观看 | 亚洲国产色一区 | 尤物九九久久国产精品的分类 | 久久综合九色综合97婷婷女人 | 91麻豆精品国产91久久久无需广告 | 网站在线观看你们懂的 | 91三级视频| 久久国产二区 | 九九在线高清精品视频 | 国产91在线免费视频 | 亚州成人av在线 | 亚洲九九爱 | 最近中文字幕视频完整版 | 亚洲精品动漫久久久久 | 狠狠网站| 国产一级特黄电影 | 色亚洲网 | 日韩免费在线观看视频 | 免费在线国产视频 | 四虎成人精品在永久免费 | 久久精品精品电影网 | 精品久久国产一区 | 免费在线观看av网站 | 麻豆精品国产传媒 | 日韩黄色免费在线观看 | 久久6精品| 99久e精品热线免费 99国产精品久久久久久久久久 | 欧美黄色成人 | 91成人在线观看高潮 | 免费亚洲精品视频 | 91亚洲精品乱码久久久久久蜜桃 | 亚洲另类xxxx | 国产精品自产拍在线观看中文 | 丝袜制服综合网 | 最新国产福利 | 国产一级视频在线免费观看 | 日韩精品免费在线视频 | 天天操天天色综合 | 国产精品美女久久久久久久网站 | 一区中文字幕电影 | 色91在线视频 | 999久久久精品视频 日韩高清www | 国产精品毛片久久久 | 黄色视屏av | 国产精品热视频 | 中国一级片在线观看 | 色婷婷丁香| 91av资源网| av黄色在线 | 免费高清在线视频一区· | 精品国模一区二区三区 | 午夜精品久久久久 | 91福利免费 | 欧美精品久久久久久久久久白贞 | 91视视频在线直接观看在线看网页在线看 | 久久久久99精品成人片三人毛片 | 五月天网页 | 日日插日日干 | 极品中文字幕 | 午夜丰满寂寞少妇精品 | 青草视频在线免费 | 免费在线播放黄色 | 日韩国产在线观看 | 五月天.com| 91尤物国产尤物福利在线播放 | 精品视频在线观看 | 西西444www大胆无视频 | 国产精品手机播放 | 精品国产观看 | 在线观看小视频 | 香蕉视频导航 | 精品欧美一区二区在线观看 | 久久精品一区二区三区中文字幕 | 国产中文视 | 日韩动漫免费观看高清完整版在线观看 | 久久久久久久久久久久99 | 日本公妇色中文字幕 | 日本中文乱码卡一卡二新区 | 婷婷国产精品 | 国产精品毛片久久久久久 | 中文在线免费视频 | 91精品啪在线观看国产81旧版 | 欧美日视频 | 国产亚洲精品久久久久久无几年桃 | 中文字幕中文字幕在线中文字幕三区 | 亚洲电影第一页av | 9999免费视频| 日韩欧美高清一区二区三区 | 美女在线观看网站 | 人人爽人人搞 | 精品免费观看视频 | 又黄又爽又刺激视频 | 91激情视频在线观看 | 在线免费黄网站 | 日韩在线观看网站 | 国产视频一区二区三区在线 | 探花系列在线 | 激情五月婷婷激情 | 在线亚洲高清视频 | 婷婷色综合色 | 日韩天堂在线观看 | 久久免费电影网 | 91在线免费看片 | 麻豆手机在线 | 欧美国产精品久久久久久免费 | 久久久久综合网 | 久久精品国产一区二区电影 | 99久久婷婷国产综合精品 | 日韩中文字幕视频在线观看 | 国产伦理久久精品久久久久_ | 国产美女无遮挡永久免费 | 一区二区中文字幕在线 | 99在线高清视频在线播放 | 麻花传媒mv免费观看 | 婷婷丁香在线视频 | 国产精品一区二区精品视频免费看 | 亚洲六月丁香色婷婷综合久久 | 国产精品午夜在线观看 | 亚洲精品中文在线资源 | 在线网址你懂得 | 五月天天在线 | www.国产精品 | 色99中文字幕| av观看免费在线 | 免费亚洲视频在线观看 | 国产最新在线视频 | 中文资源在线观看 | 免费观看一区二区三区视频 | 国产一区二区在线精品 | 色综合五月天 | av在线免费不卡 | 日韩国产精品毛片 | 国外调教视频网站 | 午夜免费福利片 | 中文字幕精品www乱入免费视频 | 四虎成人av | 久久久久久国产精品 | 黄色亚洲大片免费在线观看 | 最近免费在线观看 | 国产专区在线视频 | 亚洲资源| 国产三级久久久 | 亚洲aⅴ一区二区三区 | 日韩av中文字幕在线 | 亚洲美女视频在线观看 | 国产一区自拍视频 | 性色av一区二区三区在线观看 | 日韩资源在线播放 | www免费视频com━ | 日韩欧美视频在线观看免费 | 久久激情精品 | 99热这里只有精品在线观看 | 欧美国产日韩一区二区 | 91精品在线免费观看视频 | 久久99国产精品自在自在app | 成人在线黄色电影 | 国产精品免费久久久久久久久久中文 | 亚洲国产福利视频 | 亚洲一级黄色av | 日韩欧美一级二级 | 日韩免费电影一区二区三区 | 亚洲手机天堂 | 欧美精品少妇xxxxx喷水 | 又粗又长又大又爽又黄少妇毛片 | 久久久亚洲电影 | 国产精品九九九九九九 | 久久亚洲私人国产精品va | 国产自产在线视频 | 国内精品久久久久影院男同志 | 日韩精品一区二区三区免费观看 | 国产精品久久久久永久免费看 | 久久不卡电影 | 中文字幕色在线视频 | av片中文字幕 | 欧美激情综合五月色丁香小说 | 亚洲精品小区久久久久久 | 国产精品久久久久毛片大屁完整版 | 国产成人亚洲精品自产在线 | 伊色综合久久之综合久久 | 久久国产精品精品国产色婷婷 | 91麻豆精品国产 | 精品福利网站 | 日本九九视频 | 国产精品久久久久久久久久新婚 | 园产精品久久久久久久7电影 | 国产日韩视频在线播放 | 欧美日韩一区二区免费在线观看 | 国产a国产 | 国产在线久草 | 欧美日韩伦理一区 | 国内久久精品 | 国产91在线 | 美洲 | 一区二区视频电影在线观看 | 精品国产一区在线观看 | 日韩乱色精品一区二区 | 天天干天天爽 | 免费日韩| 国产日韩精品一区二区 | 天天射天天色天天干 | 精品在线看 | 久久久久久久影院 | 日本精品在线 | 久久久综合九色合综国产精品 | 在线成人一区 | 亚洲国产成人高清精品 | 日韩资源在线 | 亚洲精品乱码久久 | 久久精品视频在线看 | 国产流白浆高潮在线观看 | 亚av在线| 亚洲成av| 国产最新视频在线观看 | 天天操天天干天天操天天干 | 国产精品99久久久久久宅男 | 四虎影视久久久 | 久久综合狠狠综合久久综合88 | 91大神精品视频 | 亚洲黄色精品 | 91最新视频在线观看 | 日韩欧美综合精品 | 中文字幕在线视频一区二区 | 免费在线黄色av | 色综合天天综合 | 在线观看www视频 | av电影不卡| 精品视频在线播放 | 天天干夜夜夜 | 免费在线观看的av网站 | 香蕉视频91| 亚洲综合在 | 国产一区二区电影在线观看 | 国产黄av | 91中文字幕在线播放 | 亚洲韩国一区二区三区 | 最近中文字幕在线中文高清版 | 国产黄色高清 | av解说在线观看 | 亚洲国产美女精品久久久久∴ | 亚洲精选在线 | 免费亚洲黄色 | 久久精品aaa | 在线视频婷婷 | 欧美亚洲精品一区 | 四虎影视8848aamm | 午夜成人影视 | 色偷偷av男人天堂 | 色综合久久天天 | 人人射人人插 | 91精品黄色 | 欧洲亚洲女同hd | 国产亚洲精品久久久久久 | 午夜av一区二区三区 | 色干综合 | 美女久久99 | 久久久精品免费看 | 99精品久久精品一区二区 | 911国产精品 | 911久久 | www.日日操.com| 成人毛片100免费观看 | 日本三级不卡视频 | 国产精品高清在线观看 | 在线观看久久 | 手机在线黄色网址 | av官网| 国产精品2019 | 九九在线免费视频 | 一区中文字幕在线观看 | 亚洲免费av在线播放 | 99re亚洲国产精品 | 国产精品6| 91在线视频免费播放 | 久久亚洲私人国产精品 | 久久精品视频网 | 精品日本视频 | 国产手机视频 | 三三级黄色片之日韩 | 亚洲日本色 | 精品国产91亚洲一区二区三区www | 在线观看成人av | 成人黄大片视频在线观看 | 91成人网在线播放 | 中文乱码视频在线观看 | 狠狠色丁香久久婷婷综 | 亚洲视屏一区 | 1024在线看片 | 麻豆传媒视频在线 | 成人福利在线播放 | 最近2019年日本中文免费字幕 | 国产成人99久久亚洲综合精品 | 五月激情久久久 | 狠狠干中文字幕 | 午夜123| 久久精品成人热国产成 | 右手影院亚洲欧美 | 五月天激情综合网 | 超碰在线网 | 九七视频在线 | 女人18毛片a级毛片一区二区 | 国产精品久久一区二区三区不卡 | 日韩高清一区在线 | 精品国产一区二区三区久久 | 国产一区二区三区四区大秀 | 草草草影院 | 激情综合色综合久久 | 亚洲精品日韩一区二区电影 | 麻豆久久久 | 亚洲精品高清视频在线观看 | 亚洲欧美一区二区三区孕妇写真 | 久草久 | 四虎在线免费观看 | 欧美成人日韩 | 日韩精品免费在线视频 | 亚洲精品美女久久久久网站 | 精品国产福利在线 | 99精品热 | 最新av观看 | 国产精品黄色 | 国产精品一区二区三区电影 | 在线直播av | 国产护士hd高朝护士1 | 精品欧美一区二区在线观看 | 日韩免费一二三区 | 天天操天天干天天综合网 | 麻豆传媒视频在线播放 | 在线不卡的av| 91亚洲精品在线观看 | www,黄视频| 97超级碰| 日本高清dvd | 2018精品视频| 美女精品久久 | 日韩精品一区二区三区高清免费 | 又色又爽又激情的59视频 | 国产三级国产精品国产专区50 | 欧美日韩国产mv | 成人久久精品 | 亚洲国产精品女人久久久 | 三级黄色a | 深爱激情开心 | 久久久国产精品一区二区三区 | 中文字幕亚洲综合久久五月天色无吗'' | 人人插人人看 | 亚洲免费专区 | 成人av高清在线观看 | 日韩免费电影在线观看 | 久久精品免费看 | 国产伦精品一区二区三区在线 | 久精品视频免费观看2 | 久久久久久久久久久精 | 九九综合久久 | 久草视频在线免费 | 免费看黄网站在线 | 在线视频 区 | 久久免费成人精品视频 | 久久免费在线视频 | 亚洲精品中文字幕视频 | 久久人人干 | 国产麻豆电影 | 日韩视频一区二区 | 国产午夜免费视频 | 在线观看午夜 | 国产无遮挡猛进猛出免费软件 | www黄com | 亚州中文av | 婷婷亚洲综合五月天小说 | 成人黄色电影在线播放 | 亚洲视频分类 | 在线色网站| 国产又粗又猛又爽 | 成人av高清在线 | 丁香综合激情 | 97在线观看视频 | 久久夜色网 | 亚洲最新av在线 | a在线免费观看视频 | 狠狠色伊人亚洲综合网站野外 | 手机色在线 | 婷婷久月 | 久久天 | 香蕉视频导航 | 中文字幕在线观看亚洲 | 欧美一级视频一区 | 成人免费网站在线观看 | 日韩免费电影网站 | 在线 影视 一区 |