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

Flow與Typescript:哪個更適合你的項目?

開發 開發工具
在本文中,主要介紹這兩個工具,并說明它們的工作方式。并且演示如何將TypeScript 和 Flow 集成到 React 應用程序中。

隨著 JavaScript 項目變得越來越復雜,開發者開發了新的工具和語言來提高代碼質量和工作流程。

除了單元測試,TypeScript 和 Flow 等靜態類型檢查器正在成為專業開發團隊的標準。無論項目大小,使代碼更易于理解并在開發階段捕獲錯誤的好處已被證明是非常有用的。

在沒有使用類型檢查工具的情況下處理大型 JavaScript 代碼庫會讓你感到頭痛,特別是那些在運行時才會發現的錯誤會產生很多,但是當你采用了類型檢查,或者使用了TypeScript之后,你會發現這些類型的錯誤大大減少,不僅開發效率得到提高,最重要的是代碼的質量得到了極大提升。

在本文中,主要介紹這兩個工具,并說明它們的工作方式。并且演示如何將TypeScript 和 Flow 集成到 React 應用程序中。

TypeScript

TypeScript 是微軟開發的一種編程語言。它是開源的,并得到了一個龐大而活躍的社區的支持。

TypeScript 是 JavaScript 的類型化超集,可編譯為純 JavaScript。

“類型化”一詞表示 TypeScript 要求程序員聲明給定變量的數據類型。

“超集”一詞表示 TypeScript 允許程序員使用 JavaScript 提供的所有功能,以及一些額外的功能 ,如接口,泛型,裝飾器等。

下圖展示了 TypeScript 運行方式的高級概述。編譯器接收 TypeScript 文件(.ts 或 .tsx),然后將它們“轉換”為可由瀏覽器運行的有效 JavaScript 代碼。

我們來看一些用 TypeScript 編寫的簡單代碼:

  1. function getName(person: IPerson):void{ 
  2.     console.log(person); 
  3.  
  4. interface IPerson{ 
  5.     name: string 
  6.     age: number 
  7.  
  8. getName({"name":"john",age:20}); 
  9.  
  10. getName({age:23})  //Argument of type '{ age: number; }' is not assignable to parameter of type 'IPerson'.   

正如我們在上面的代碼塊中看到的,我們聲明了一個函數,該函數接收一個具有兩個屬性的對象,分別是字符串和數字類型的名稱和年齡。調用該函數時,TypeScript 會檢查提供的對象的類型是否正確,如果類型不正確,就會像在調用第二個函數的時候代碼將無法編譯并拋出錯誤。

Flow

與 TypeScript 相比,Flow 并不是一種編程語言,它被叫做JavaScript 的靜態類型檢查器,類似于我們經常使用的ESLint,它是由 Facebook開發的。

我們可以通過向常規 JavaScript 文件添加特殊注釋來使用 Flow,指示我們期望的類型,或者我們可以讓工具推斷出期望的類型并在發現任何錯誤時警告我們。

我們來看看以下 Flow 官方文檔的案例:

  1.  // @flow 
  2. function square(n) { 
  3.   return n * n; // Error! 
  4.  
  5. square("2"); 

注意到上面代碼的第一行了嗎?為了讓工具知道它必須檢查哪些文件,我們通過添加注釋 @flow在每個要包含在 Flow 監控過程中的文件中。

使用 Flow,您不必更改文件的擴展名,而是繼續在帶注釋的文件.js和.jsx文件中編寫普通的 JavaScript。

如果我們保留上面的代碼,JavaScript 引擎會因為注釋而拋出錯誤,因此,作為額外的步驟,我們必須在最后編譯代碼之前刪除所有注釋。

當然我們可以使用Babel 或者 flow-remove-types等工具來清除它們。

Flow 與 TypeScript 與 React 的集成

一個標準的 React 應用程序

創建 React 應用程序的最簡單方法是使用create-react-app工具。

我們將創建兩個相同的 React 應用程序,一個用于測試 TypeScript,另一個用于測試 Flow。

首先,讓我們通過創建一個沒有任何類型檢查的 React 應用程序來看看這個工具的實現:

  1. npx create-react-app demo-app 

React啟用TypeScript

如果我們從頭開始,我們可以像這樣使用 –template 標志來創建一個支持 TypeScript 的 React 應用程序:

  1. npx create-react-app react-ts --template typescript 

對于一個新項目這是一個最佳的辦法,如果我們想要在現有的項目中啟用react的話,我們需要做下面的操作。

  1. yarn add typescript @types/node @types/react @types/react-dom @types/jest 

接下來,我們將現有的.js和.jsx文件重命名為.ts和.tsx。

重啟我們的開發服務器之后,你會發現項目目錄中多了一個tsconfig.json文件,這個文件是typescript的配置文件,你可以對它進行一些偏好配置。

然后我們創建一個React組件:

  1. import React from "react"; 
  2. interface Props{ 
  3.     items: Item[] 
  4.  
  5. export interface Item { 
  6.     id:number, 
  7.     name:string 
  8. function ItemList(props:Props){ 
  9.     const listItems = props.items.map(item=>item.name); 
  10.     return listItems; 
  11. export default ItemList; 

TypeScript 允許我們使用接口聲明我們期望的對象類型。

在這里,我們聲明了 Props 接口,它有一個屬性 item,一個 Item 類型的對象數組——另一個接口有兩個屬性,一個 number 類型的 id 和一個 string 類型的 name,兩者都是必需的。

然后,我們通過添加注解 props:Props 說我們的函數組件 ItemsList 的 props 參數是一個 Props 類型的對象。

讓我們ItemsList在我們的App.tsx文件中實現這個組件并聲明一個名為 items 的常量,就像一個包含虛擬對象的數組一樣,看看 TypeScript 是如何反應的:

您可以看到顯示了一個錯誤,指出 Item 必須包含 id 和 name 屬性。如果我們此時嘗試運行應用程序,TypeScript 可以避免我們產生錯誤。

現在讓我們刪除我們的項目 const 的類型,看看這個錯誤是否消失:即使我們沒有聲明項目 const 應該是 type Item[],TypeScript 也足夠聰明,可以發現在我們的ItemsList組件中使用它是不安全的。

現在讓我們通過向組件添加兩個適當的記錄來解決這個問題:

  1. const items: Item[] = [{ id: 1, name: "One" },{ id: 2, name: "Two" }]; 

我們現在看到應用程序編譯并成功執行:通過引入TypeScript,我們避免了運行潛在錯誤的代碼,同時還通過顯式聲明整個應用程序中使用的類型使代碼本身更具可讀性。

React啟用Flow

  1. yarn add flow-bin npm run flow init 

然后我們創建和之前一樣的ItemsList組件。

  1. import React from 'react'; 
  2.  
  3. function ItemsList(props) { 
  4.    const listItems = props.items.map(item => item.name); 
  5.  
  6.    return (listItems); 
  7.  
  8.  
  9. export default ItemsList;// @flow 
  10. import React from 'react'; 
  11.  
  12.  
  13. type Item = { 
  14.     id: number, 
  15.     name: string 
  16.  
  17. type Props = { 
  18.     items: Item[] 
  19.  
  20. function ItemsList(props: Props) { 
  21.     const listItems = props.items.map(item => item.name); 
  22.  
  23.     return (listItems); 
  24.  
  25.  
  26. export default ItemsList; 

運行yarn flow 會出現錯誤,接下來我們添加一些類型。

  1. // @flow 
  2. import React from 'react'; 
  3.  
  4.  
  5. type Item = { 
  6.     id: number, 
  7.     name: string 
  8.  
  9. type Props = { 
  10.     items: Item[] 
  11.  
  12. function ItemsList(props: Props) { 
  13.     const listItems = props.items.map(item => item.name); 
  14.  
  15.     return (listItems); 
  16.  
  17.  
  18. export default ItemsList; 

重新運行yarn flow,將不會提示任何錯誤。

每次要使用 Flow 檢查文件時,我們都必須運行相同的命令。對于使用 VS Code 的用戶,可以使用Flow Language Support在每次保存后自動執行 Flow 檢查。其他 IDE 將具有等效功能,只需搜索即可找到與您的環境相關的實現。

TypeScript 與 Flow 的優缺點

TypeScript優點:

  • 不僅僅是一個類型檢查器: TypeScript向 JavaScript添加了額外的數據結構,如Enums,來自其他語言的開發人員可能缺少這些數據結構。它還具有接口、裝飾器和其他使其更加健壯的功能——使開發人員能夠編寫極其全面的代碼。這些功能在大型和企業風格的項目中尤其強大。
  • 由 Microsoft 開發: TypeScript 正在接收定期更新并將繼續發展??梢钥隙ǖ卣f,在快速發展的 JavaScript 生態系統中,TypeScript 的壽命將比大多數其他“趨勢”更長。
  • 大型社區:TypeScript 擁有一個龐大而活躍的社區,他們愿意為它的開發做出貢獻,并通過回答他們的問題或編寫有用的教程來幫助他人。除了官方文檔 之外,您還可以找到大量有關 TypeScript 主題的非官方資源。

TypeScript缺點:

  • 陡峭的學習曲線:TypeScript 一開始可能是嚴格且無情的,讓開發人員望而卻步。它比 Flow 更難和更復雜,因為它更健壯,并且被認為是一種編程語言(或至少是 JavaScript 的“超集”)。TypeScript 也感覺像是一種全有或全無的方法,這會使事情復雜化并減慢具有大量依賴項的大型項目的開發速度。
  • 大量重復代碼:有人認為 TypeScript 沉淀了大量模板代碼,這會增加開發時間并使文件更難理解。在這種情況下,代碼極簡主義者可能更喜歡輕量級 Flow(或根本不進行類型檢查)。

Flow優點:

  • 易用性: Flow 比 TypeScript 更寬容,可作為對 JavaScript 中靜態類型的更溫和的介紹。啟動和運行速度更快,而且由于其按文件選擇加入的方法,將 Flow 添加到現有項目中也可能更容易。
  • 由 Facebook 開發:開發 React 的公司,因此您可以確定這兩種工具完全兼容并且可以一起使用。

Flow缺點:

  • 更小的社區:Flow 擁有一個更小、更不活躍的社區,這意味著那些試圖學習如何使用它并調試可能出現的問題的人可用的資源更少。這也可能意味著它在支持和添加功能方面的未來比 TypeScript 更加不確定。
  • 不那么健壯: Flow 可以很好地進行類型檢查,但僅此而已。TypeScript 可能更適合具有較長支持范圍的更多企業項目,同時考慮到開發人員可以在此類項目中使用其更高級的功能。Flow 可能是更精簡項目的更好選擇,或者作為將類型檢查引入現有項目的一種方式,而不會太痛苦。由您決定哪種工具最適合您的項目和環境。

結論

TypeScript 和 Flow 之間有明顯的區別。在功能方面,TypeScript 更健壯,而 Flow 只是一個類型檢查器。

盡管 Flow 是由 Facebook創建的,但是對于同公司開發的React框架來說,并沒有特別優待之處,畢竟它最初的目的就不是作為react的附屬工具,而是作為一個通用項目管理工具。

對于喜歡輕量級,喜歡快速上手的人來說,flow是一個不錯的選擇,你可以非常快速地入門并使用它。

而如果你在開發一個大型項目,那么typescript應該是你最佳的選擇,它龐大的社區讓它的發展異常迅速,主流的框架源碼都采用了typescript進行開發足以說明問題。

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2024-04-03 08:28:31

GolangPHP語言

2023-08-29 11:37:10

云計算數據中心

2009-02-25 19:47:54

IT認證思科認證微軟認證

2023-11-23 11:10:20

WiFi蜂窩網絡

2024-12-09 00:00:10

.NETJava語言

2021-07-30 11:16:38

云存儲本地存儲

2017-06-27 15:08:05

大數據Apache SparKafka Strea

2021-04-27 09:00:00

PythonIDE開發

2021-12-07 11:18:40

前端代碼規范工具開發

2010-07-13 16:15:49

XenServer5.6

2022-01-26 10:26:57

ChromeBrave網頁瀏覽器

2022-01-25 19:36:46

ChromeBrave瀏覽器

2015-09-16 11:29:46

超融合架構軟件定義存儲

2018-07-03 10:25:22

CentOsUbuntu服務器

2023-10-06 23:46:00

PHPPythonWeb

2020-06-17 15:00:27

FedoraUbuntuLinux

2023-10-08 11:53:29

2023-10-10 08:36:57

數據庫MyISMInnoDB

2016-05-31 11:00:43

數據中心數據中心硬件數據中心搭建

2023-12-06 10:18:35

Python開發
點贊
收藏

51CTO技術棧公眾號

日韩在线网址| 9191在线| 日本伊人精品一区二区三区观看方式| 一区二区成人av| 五月天丁香花婷婷| 美女露胸视频在线观看| 亚洲国产高清在线| 成人免费看片网址| 亚洲黄网在线观看| 中文字幕一区二区精品区| 日韩精品视频免费在线观看| 日韩在线一区视频| 午夜欧美激情| 亚洲乱码国产乱码精品精的特点| 久草精品电影| 国产免费久久久| 久久在线精品| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美熟妇精品黑人巨大一二三区| 99久久久成人国产精品| 日韩欧美极品在线观看| 国产精品日韩三级| 91大神xh98hx在线播放| 久久亚洲综合av| av观看久久| 亚洲在线精品视频| 先锋亚洲精品| 国内精品久久久久久久久| 国产三级aaa| 综合亚洲色图| 亚洲第一级黄色片| 黑人巨大猛交丰满少妇| 美女视频一区| 欧美性做爰猛烈叫床潮| 干日本少妇首页| 美女尤物在线视频| 伊人夜夜躁av伊人久久| 中文网丁香综合网| eeuss影院在线播放| 26uuu久久天堂性欧美| 99久久99久久精品国产片| 91极品身材尤物theporn| 青青青伊人色综合久久| 日韩免费在线看| 天堂网中文字幕| 亚洲三级毛片| 久久久久这里只有精品| 免费人成视频在线| 欧美一区免费| 久久av资源网站| 9999热视频| 欧美+亚洲+精品+三区| 久久影院资源网| 中文字幕亚洲欧美日韩| 亚洲一区 二区 三区| 久久精品色欧美aⅴ一区二区| 老司机精品免费视频| 日韩欧美字幕| 久久中文字幕在线视频| 日韩欧美国产成人精品免费| 香蕉视频国产精品| 欧美成人免费全部观看天天性色| 视频一区国产精品| 人妻精品一区二区三区| 成人国产精品免费网站| 国产精品一区二区三区免费观看| 欧美自拍偷拍第一页| av在线综合网| 欧美日韩高清在线一区| 成人午夜在线观看视频| 国产精品久久久久久一区二区三区| 亚洲国产精品毛片| 国产超级va在线视频| 一区二区三区波多野结衣在线观看| 欧美国产综合在线| 国产va在线视频| 一本到三区不卡视频| 黄色手机在线视频| 亚洲1区在线观看| 日韩激情片免费| 欧美激情视频二区| 欧美成人69av| 91精品国产色综合久久不卡98| 日本中文字幕久久| 久久爱另类一区二区小说| 91传媒视频免费| 青青青草网站免费视频在线观看| 欧美激情在线一区二区三区| 色乱码一区二区三区熟女| 久久免费电影| 欧洲一区二区三区免费视频| 国产乱叫456| 欧美做受69| 日韩最新免费不卡| 日本一二三区不卡| 男人的天堂久久精品| 91网免费观看| 国产主播福利在线| 亚洲精选视频免费看| 青青草成人免费在线视频| 精品视频在线一区二区在线| 欧美成人三级电影在线| 免费看黄色av| 亚洲网站在线| 国产中文欧美精品| 天堂成人在线| 夜夜夜精品看看| 黄色成人免费看| 国产精品videossex| 中文字幕欧美精品在线| 日韩女优在线观看| 国内国产精品久久| 亚洲国产精品一区二区第一页| 日本在线观看大片免费视频| 欧洲一区在线观看| 日韩aaaaa| 欧美在线91| 国产精品久久久久久久av电影| 欧美 日韩 国产 成人 在线| 国产精品传媒入口麻豆| 国产a级一级片| 136国产福利精品导航网址应用| 一本色道久久88精品综合| 国产无遮挡又黄又爽| 国产一区在线看| 天堂一区二区三区 | 欧美理论片在线观看| 中文字幕777| 久久网这里都是精品| 丁香六月激情婷婷| 精品亚洲a∨一区二区三区18| 国产亚洲欧美另类中文| 天堂网一区二区三区| 国产成人av福利| 国产精品av免费观看| 久久久久九九精品影院| 久久精品欧美视频| 97超碰人人草| 亚洲欧洲在线观看av| 538任你躁在线精品免费| 国产不卡av一区二区| 69国产精品成人在线播放| 六月丁香综合网| 亚洲最大色网站| 欧美性猛交xx| 中文字幕一区二区三区欧美日韩| 91色精品视频在线| 国产在线观看a| 欧美午夜精品免费| 欧美丰满美乳xxⅹ高潮www| 久久裸体视频| 性欧美大战久久久久久久免费观看| 92国产精品| 亚洲视频一区二区| 99re国产在线| 欧美激情中文字幕| 日韩av.com| 亚洲老妇激情| 成人毛片网站| 老司机深夜福利在线观看| 亚洲国产天堂久久国产91| 日本少妇毛茸茸高潮| 2017欧美狠狠色| 99免费视频观看| 日韩精品一区二区三区免费观影 | 日韩一区二区三区国产| 91精品国自产| 一区二区日韩av| av电影在线播放| 欧美一级久久| 亚洲黄色成人久久久| va天堂va亚洲va影视| 欧美精品www在线观看| 天堂中文在线看| 日本道色综合久久| 色哟哟一一国产精品| 国产.欧美.日韩| 欧美在线观看成人| 日韩精品一区二区三区免费观影| 亚洲自拍中文字幕| 日本免费一区二区六区| 在线观看不卡av| 国产成人a人亚洲精品无码| 亚洲1区2区3区4区| 欧洲美熟女乱又伦| 国产电影一区二区三区| 色综合av综合无码综合网站| 日本女优一区| 古典武侠综合av第一页| 香蕉久久免费电影| 久久国产色av| 精品视频一二三| 欧美一区日本一区韩国一区| 制服.丝袜.亚洲.中文.综合懂色| 国产精品毛片无遮挡高清| 精品人妻一区二区免费| 免费黄网站欧美| 霍思燕三级露全乳照| 日韩dvd碟片| 国偷自产av一区二区三区小尤奈| 国产麻豆久久| 亚洲3p在线观看| 黄色动漫在线| 国产亚洲人成网站在线观看| 亚洲精品无遮挡| 欧美三级日韩在线| 国产成人精品一区二三区| 中文字幕人成不卡一区| 人妻无码一区二区三区| 国产精品一区在线观看你懂的| 毛片一区二区三区四区| 国语对白精品一区二区| 在线视频欧美一区| 四虎5151久久欧美毛片| av一区二区三区免费| 91福利精品在线观看| 97精品国产97久久久久久免费 | 青青草原成人在线视频| www国产在线观看| 国产一级揄自揄精品视频| 人妻无码中文字幕| 欧美一区二区三级| 一区二区自拍偷拍| 色哟哟亚洲精品| 精品一区免费观看| 一区二区三区欧美日| 99热这里只有精品4| 欧美激情一区在线观看| 一级片手机在线观看| 99视频热这里只有精品免费| 免费在线观看日韩av| 韩国成人福利片在线播放| 国产视频手机在线播放| 视频一区二区不卡| 国产成人久久婷婷精品流白浆| 日韩视频久久| 欧妇女乱妇女乱视频| 欧美色123| 中文字幕日韩精品无码内射| 中文无码久久精品| 亚洲小说欧美另类激情| 国产大片一区| 午夜啪啪免费视频| 在线观看国产精品入口| 宅男噜噜99国产精品观看免费| 日韩精品欧美| 欧美日韩在线免费观看视频| 色呦哟—国产精品| 一本久久a久久精品vr综合 | 久久精品欧美一区二区三区麻豆| www.超碰97| 久久综合色鬼综合色| 欧美精品黑人猛交高潮| 久久伊人中文字幕| 中文字幕第4页| 日本一区二区三级电影在线观看 | 男插女视频网站| 国产精品一级二级三级| 免费欧美一级片| 国产999精品久久| 欧美熟妇精品一区二区蜜桃视频| 99国产精品国产精品久久| aaaaa级少妇高潮大片免费看| 久久一二三国产| 色www亚洲国产阿娇yao| 亚洲欧美区自拍先锋| 久久久精品国产sm调教网站| 亚洲综合一区在线| 精品少妇久久久| 黑丝美女久久久| 最近中文字幕免费在线观看| 欧美卡1卡2卡| 国产91免费在线观看| 日韩大陆欧美高清视频区| 激情在线视频| 久久精品在线播放| 国产探花视频在线观看| 国产成人精品久久亚洲高清不卡| 日韩精品一级毛片在线播放| 91入口在线观看| 免费av一区二区三区四区| 亚洲一区精彩视频| 一区福利视频| 午夜激情在线观看视频| 国产成人午夜99999| 中文人妻一区二区三区| 国产精品久久福利| 在线看成人av| 欧美日韩另类国产亚洲欧美一级| 俄罗斯嫩小性bbwbbw| 亚洲人成网站色ww在线| 黄色网页在线免费看| 91精品国产91久久久久久最新| 欧美va在线观看| 99久久精品无码一区二区毛片| 曰本一区二区三区视频| 青青草综合视频| 视频一区在线播放| 26uuu国产| 国产精品免费视频观看| 久久久久久久99| 欧美一区在线视频| 国产高清一级毛片在线不卡| 久久全国免费视频| 伊人亚洲精品| 人偷久久久久久久偷女厕| 国产尤物精品| 色天使在线观看| 久久久99精品免费观看不卡| 久视频在线观看| 欧美顶级少妇做爰| 国产三级电影在线| 97**国产露脸精品国产| 欧美在线在线| 一本一道久久久a久久久精品91| 亚洲男女自偷自拍| 午夜免费福利影院| 亚洲精品欧美激情| 一级黄色a视频| 国产小视频国产精品| 久久青草伊人| 国产欧美日本在线| 黄色免费成人| 91人妻一区二区三区| 国产精品欧美经典| 337p粉嫩色噜噜噜大肥臀| 精品丝袜一区二区三区| av丝袜在线| 高清av免费一区中文字幕| 欧美aa国产视频| 在线视频日韩欧美| 中文字幕一区三区| 一本大道伊人av久久综合| 亚洲最新av在线网站| 日韩和的一区二在线| 欧美在线日韩精品| 久久久久欧美精品| 欧美做受xxxxxⅹ性视频| 精品久久香蕉国产线看观看gif| 好吊色在线观看| 午夜精品一区二区三区在线 | 国产在线日韩欧美| 国产精品免费在线视频| 欧美精品三级日韩久久| 舐め犯し波多野结衣在线观看| 亚洲啊v在线观看| 青青青在线播放| 久久久精品蜜桃| 天天做天天爱夜夜爽| 亚洲精品综合精品自拍| 香蕉成人av| 亚洲一区二区在线看| 麻豆成人免费电影| 国产传媒免费在线观看| 91精品国产色综合久久久蜜香臀| 国产二区三区在线| 国产99午夜精品一区二区三区| 一区在线免费观看| 女人被狂躁c到高潮| 日本久久电影网| 色多多视频在线观看| 91亚洲精品一区| 极品尤物久久久av免费看| 玖草视频在线观看| 欧美视频一区在线| 成人a在线视频免费观看| 成人av资源| 免播放器亚洲| 开心激情五月网| 欧美不卡一区二区| 中文在线免费二区三区| 亚洲v日韩v欧美v综合| 国产麻豆成人传媒免费观看| 国产一卡二卡在线播放| 亚洲精品资源美女情侣酒店| 日韩经典一区| 超级碰在线观看| 91亚洲男人天堂| 中文字幕一区二区人妻痴汉电车| 精品国产视频在线| 黄色免费大全亚洲| 少妇一级淫免费放| 亚洲一区二区三区四区的 | 国产亚洲视频中文字幕视频| 国产精品1区| 免费成人午夜视频| 中文字幕一区二区三区四区| 黄色一级大片在线免费看国产一| 国产成人啪精品视频免费网| 欧美国产另类| 一区二区三区伦理片| 欧美大胆人体bbbb| a成人v在线| 少妇高潮喷水在线观看| 国产精品久久久久久久久搜平片| 韩国av免费在线| 成人精品一区二区三区| 中日韩视频在线观看| 国产精品免费人成网站酒店| 亚洲欧美在线免费观看|