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

使用Babel和ES7創(chuàng)建JavaScript模塊

移動(dòng)開發(fā)
本文主要介紹通過(guò) ES7 與 Babel 建立JavaScript 模塊,文章系國(guó)內(nèi)ITOM 管理平臺(tái)OneAPM 工程師編譯呈現(xiàn).

去年,新版的JavaScript發(fā)布了,它有很多新的優(yōu)點(diǎn)。其中之一就是導(dǎo)入導(dǎo)出模塊的語(yǔ)法被整理為JavaScript模塊處理的“唯一方法”。好吧,終于等到了。另一樁好事兒是,它的編排方式使你可以靜態(tài)分析整棵模塊依賴樹。真是相當(dāng)厲害。

讓我們來(lái)掃一眼這些語(yǔ)法:

  1. import v from "mod";  
  2. import * as obj from "mod";  
  3. import {x} from "mod";  
  4. import {x as v} from "mod";  
  5. import "mod";  
  6.  
  7. export var v;  
  8. export default function f(){};  
  9. export default function(){};  
  10. export default 42;  
  11. export {x};  
  12. export {x as v};  
  13. export {x} from "mod";  
  14. export {x as v} from "mod";  
  15. export * from "mod"

所以,基本上你可以導(dǎo)入一個(gè)模塊(“default”)的主要值,或者導(dǎo)入從顯式導(dǎo)出(explicit exports)而來(lái)的一個(gè)特定屬性,或者這二者的組合,或者是任何東西。相對(duì)應(yīng)的,你也可以為默認(rèn)模塊導(dǎo)出一個(gè)值,或者帶有多個(gè)屬性的對(duì)象。你也可以逐個(gè)導(dǎo)出這些屬性。***風(fēng)格還是請(qǐng)參考風(fēng)格指南吧;)

ES7中還加入了一些對(duì)這類語(yǔ)法的小補(bǔ)充。

  1. export * as ns from "mod";  
  2. export v from "mod"

沒(méi)啥特別的,但我們什么時(shí)候能使用它們呢?擇日不如撞日吧。就像對(duì)待很多ES6的語(yǔ)法特性,如果你目前不打算支持它們,可以用一種叫Babel的工具把它們轉(zhuǎn)譯回ES5。一旦你準(zhǔn)備支持它們了,就可以讓Babel停止轉(zhuǎn)譯。

讓我們來(lái)看一眼具體如何操作。我們將在Node.js與NPM中實(shí)現(xiàn)它。試試看執(zhí)行這個(gè)文件;

src/letter_keys.js

  1. // you would have a constant for each key  
  2. // (I would normally uppercase all constants)  
  3. const a = 119;  
  4. const d = 100;  
  5. const s = 115;  
  6. const w = 119;  
  7.  
  8. // you would export all keys here  
  9. // note: you can't say `w: 119` here. It just isn't valid.  
  10. // This destructures to `w: w, a: a, ...`  
  11. export {  
  12.   w,  
  13.   a,  
  14.   d,  
  15.   s,  

src/arrow_keys.js

  1. const UP = 38;  
  2. const RIGHT = 39;  
  3. const DOWN = 40;  
  4. const LEFT = 37;  
  5.  
  6. export {  
  7.   UP,  
  8.   RIGHT,  
  9.   DOWN,  
  10.   LEFT,  

 src/move.js

  1. export {a, w, s, d} from './letter_keys';  
  2. export * as ARROWS from './arrow_keys'

我們的設(shè)想是,index.js 主文件用于內(nèi)部模塊內(nèi)容的導(dǎo)出,它假設(shè)這些鍵是從其它文件中導(dǎo)出的。這個(gè)例子有點(diǎn)費(fèi)解,但是這并無(wú)大礙。

src/index.js

  1. import * as keys from './move';  
  2. console.log(keys); 

 這可以作為依賴這個(gè)模塊的某個(gè)項(xiàng)目的一部分。它應(yīng)當(dāng)打印awsd鍵以及箭頭對(duì)象。讓我們先從npm開始吧。創(chuàng)建repo dir并初始化:

  1. ~$ mkdir foo  
  2. ~$ cd foo  
  3. ~/foo$ mkdir src  
  4. # put src files above in ~/foo/src  
  5. ~/foo$ npm init -yes  
  6. ~/foo$ npm install babel-cli babel-preset-es2015 babel-preset-stage-1 -D 

  這得花點(diǎn)時(shí)間。你可能已經(jīng)猜到了, babel-cli 支持從命令行運(yùn)行Babel (6),并且, babel-preset-stage-1 包提供了相關(guān)的ES7模塊轉(zhuǎn)譯工具(在撰寫本文之時(shí))。 -yes 標(biāo)記會(huì)讓npm創(chuàng)建一個(gè)默認(rèn)的 package.json ,而不會(huì)詢問(wèn)用戶。 -D 標(biāo)記是 --save-dev 的縮寫,它會(huì)在 package.json 中把包添加到 devDependency 條目下。現(xiàn)在,把預(yù)設(shè)參數(shù)添加入到默認(rèn)的babel配置文件中:

 .babelrc

  1. {  
  2.   "presets": ["es2015""stage-1"]  

 如果這能順利運(yùn)行,那就太好了,擁抱未來(lái)吧!但是,在筆者寫本文時(shí),這些示例在ES6中都無(wú)法運(yùn)行,更不用說(shuō)Node.js了。經(jīng)過(guò)這些轉(zhuǎn)譯步驟,不管怎樣,它們可以被執(zhí)行了。

現(xiàn)在還應(yīng)該有一個(gè)幾乎為空的package.json文件,它包含了我們添加的那三個(gè)dev 依賴。讓我們給這個(gè)package.json 文件加一段腳本,來(lái)實(shí)現(xiàn)轉(zhuǎn)譯:

  1. ...  
  2.   "scripts": {  
  3.     "test""echo "Error: no test specified" && exit 1",  
  4.     "translate""node_modules/babel-cli/bin/babel-node.js src/index.js" 
  5.   },  
  6.   ... 

 (僅在“test”那行之后添加“translate”行及逗號(hào))。

這段轉(zhuǎn)譯腳本是一個(gè)編譯步驟。在文章的結(jié)尾處,你可以找到本文(正式版本)使用的最終版package.json文件。現(xiàn)在,只剩下調(diào)用npm指令來(lái)運(yùn)行腳本,以實(shí)現(xiàn)轉(zhuǎn)譯,并運(yùn)行我們的代碼了。

  1. ~/foo$ npm run translate --silent  
  2.  
  3. { A: [Getter],  
  4.   W: [Getter],  
  5.   S: [Getter],  
  6.   D: [Getter],  
  7.   ARROWS: { UP: 38, RIGHT: 39, DOWN: 40, LEFT: 37 } } 

加油!現(xiàn)在,作為額外獎(jiǎng)勵(lì),我們可以使用Jscrambler來(lái)“混淆”一下代碼。我們可以傳遞Babel轉(zhuǎn)譯后的代碼,所以干嘛不這么做呢?

我們(最終的)package.json文件是這樣的:

package.json

  1. {  
  2.   "name""foo",  
  3.   "version""1.0.0",  
  4.   "description""",  
  5.   "main""index.js",  
  6.   "scripts": {  
  7.     "test""echo "Error: no test specified" && exit 1",  
  8.     "translate""node_modules/babel-cli/bin/babel-node.js src/index.js" 
  9.   },  
  10.   "keywords": [],  
  11.   "author""Your Name <some@mail.local> (http://localhost/)",  
  12.   "license""ISC",  
  13.   "devDependencies": {  
  14.     "babel-cli""6.6.5",  
  15.     "babel-preset-es2015""6.6.0",  
  16.     "babel-preset-stage-1""6.5.0",  
  17.     "jscrambler""0.7.5" 
  18.   }  

 像往常一樣完成配置(如果使用的是Node.js,則需要一個(gè)專業(yè)版賬號(hào))。以下是筆者所用的文件

.jscramblerrc

  1. {  
  2.   "keys": {  
  3.     "accessKey""See https://jscrambler.com/en/account/api_access",  
  4.     "secretKey""See https://jscrambler.com/en/account/api_access" 
  5.   },  
  6.   "params": {  
  7.     "constant_folding""%DEFAULT%",  
  8.     "dead_code""%DEFAULT%",  
  9.     "dead_code_elimination""%DEFAULT%",  
  10.     "dictionary_compression""%DEFAULT%",  
  11.     "dot_notation_elimination""%DEFAULT%",  
  12.     "function_outlining""%DEFAULT%",  
  13.     "function-reorder""%DEFAULT%",  
  14.     "literal_duplicates""%DEFAULT%",  
  15.     "literal_hooking""2;8",  
  16.     "member_enumeration""%DEFAULT%",  
  17.     "mode""nodejs",  
  18.     "rename_local""%DEFAULT%",  
  19.     "string_splitting":"0.3",  
  20.     "whitespace""%DEFAULT%" 
  21.   }  

我們用一段腳本來(lái)匯總一下。這段腳本將會(huì)用Babel翻譯源文件,輸出到/build文件夾,接著用Jscrambler混淆代碼,再將結(jié)果放入/dist文件夾。/dist里的內(nèi)容可以被正常運(yùn)行,而不必用到ES7的任何特性。

run.sh

  1. #!/bin/sh  
  2.  
  3. echo "Babelifying src/*.js" 
  4. node_modules/babel-cli/bin/babel.js -d build src/*.js  
  5. echo "Scrambling build/*.js" 
  6. node_modules/jscrambler/bin/jscrambler -o dist build/src/**  
  7. echo "Clean up artifacts" 
  8. mv dist/build/src/* dist/  
  9. rmdir dist/build/src  
  10. rmdir dist/build  
  11. echo "Done! See dist/scrambled.js" 
  12. echo "Running:" 
  13. node dist/index.js 

 使之準(zhǔn)備就緒:

 

  1. chmod +x run.sh 

接著,運(yùn)行:

 

  1. ~/foo$ ./run.sh   
  2. Babelifying src/*.js  
  3. src/arrow_keys.js -> build/src/arrow_keys.js  
  4. src/index.js -> build/src/index.js  
  5. src/letter_keys.js -> build/src/letter_keys.js  
  6. src/move.js -> build/src/move.js  
  7. Scrambling build/*.js  
  8. Clean up artifacts  
  9. Done! See dist/ for your scrambled files  
  10. Running:  
  11. { a: [Getter],  
  12.   w: [Getter],  
  13.   s: [Getter],  
  14.   d: [Getter],  
  15.   ARROWS: { UP: 38, RIGHT: 39, DOWN: 40, LEFT: 37 } } 

 你可以去/dist文件夾查看結(jié)果。你會(huì)看到,結(jié)果和原文件相去甚遠(yuǎn),這是因?yàn)槲覀兺ㄟ^(guò)Jscrambler來(lái)保護(hù)它,但是結(jié)果還是可以運(yùn)行的。

教程到此結(jié)束,祝ES7用得開心!

OneAPM 助您輕松鎖定Node.js 應(yīng)用性能瓶頸,通過(guò)強(qiáng)大的Trace 記錄逐層分析,直至鎖定行級(jí)問(wèn)題代碼。以用戶角度展示系統(tǒng)響應(yīng)速度,以地域和瀏覽器維度統(tǒng)計(jì)用戶使用情況。

責(zé)任編輯:陳琳 來(lái)源: One APM官方博客
相關(guān)推薦

2016-10-19 19:03:18

javascriptes6React Nativ

2019-12-11 09:00:00

ES7ES8ES9

2020-07-09 08:01:48

JavaScriptES模塊

2021-06-28 08:10:59

JavaScript異步編程

2021-04-08 18:39:57

JavaScriptExpress區(qū)塊鏈

2009-04-23 13:19:21

創(chuàng)建XMLXML文件Javascript

2023-11-08 08:40:35

JavaScriptS 模塊

2023-02-03 14:49:38

2020-10-17 09:03:06

使用JS創(chuàng)建復(fù)制&粘貼

2021-01-19 06:16:05

前端Babel 技術(shù)熱點(diǎn)

2020-12-23 14:18:43

JavaScript模塊導(dǎo)出

2011-06-09 15:27:01

JavaScript

2025-07-28 01:11:00

2023-05-11 08:00:00

JavaScript柱狀圖

2010-09-09 09:16:27

JavaScriptdiv

2020-11-18 09:06:02

JavaScript開發(fā)技術(shù)

2022-11-22 13:00:38

2021-08-18 07:05:57

ES6Asyncawait

2013-08-20 18:39:34

JavaScript模requireJS

2021-06-10 18:40:32

ES 標(biāo)準(zhǔn)模塊化
點(diǎn)贊
收藏

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

国产精品久久久久久久久久久久久久 | 国产日韩一区二区三区在线| 不卡的看片网站| 有码中文亚洲精品| 久久国产精品视频在线观看| 欧美丰满美乳xxⅹ高潮www| 羞羞网站在线免费观看| 亚洲a在线视频| 色婷婷久久综合| 国产在线精品一区二区三区》| 精品国产国产综合精品| 欧美三区四区| 久久久久久免费网| 5566日本婷婷色中文字幕97| 韩国av中国字幕| 成人在线直播| 久久精品国产**网站演员| 亚洲区免费影片| 精品一区二区中文字幕| 无码精品人妻一区二区| 激情成人亚洲| 亚洲第一中文字幕在线观看| 日韩成人三级视频| 亚洲毛片在线播放| 欧美私人啪啪vps| 日韩免费高清av| av网站大全免费| 日批视频在线播放| 亚洲制服av| 亚洲欧美日韩网| 青青草精品视频在线观看| 国产黄色片在线观看| 青椒成人免费视频| 国产午夜精品一区二区三区 | 青春草在线视频| 国产福利一区二区| 欧美日韩高清区| 一级全黄裸体片| 久久av影院| 亚洲日本电影在线| 国产v亚洲v天堂无码| 国产性70yerg老太| 清纯唯美亚洲经典中文字幕| 色天天综合久久久久综合片| 日韩免费av一区二区三区| 中文字幕+乱码+中文乱码91| 婷婷亚洲五月| 精品捆绑美女sm三区| 男人添女人下面高潮视频| 久草在线免费福利资源| 捆绑调教一区二区三区| 国产999精品久久久影片官网| 在线观看免费小视频| 日本黄色成人| 亚洲成a人片在线不卡一二三区| 久久国产精品高清| 亚洲网站免费观看| 国内精品久久久久久久97牛牛| 欧美va亚洲va国产综合| 超碰中文字幕在线观看| 蜜桃视频在线网站| 中文字幕第一区综合| 999视频在线免费观看| 好吊日在线视频| 狼人天天伊人久久| 欧美色倩网站大全免费| 国产高清www| 91在线三级| 国产精品成人免费在线| 国产精品一区视频网站| 久久久久精彩视频| 欧美午夜a级限制福利片| 美女啪啪无遮挡免费久久网站| 中文字幕一区三区久久女搜查官| 日本免费在线一区| 欧美日本在线看| 国产91在线免费| 性爽视频在线| 亚洲午夜羞羞片| 午夜精品一区二区在线观看| 韩国av免费在线| 成人精品免费网站| 蜜桃999成人看片在线观看| 国产片在线播放| 久久亚洲欧洲| 久久久视频免费观看| 日本免费网站视频| 国产影视一区| 亚洲精品久久久久久久久久久| 午夜精品久久久久久久99热影院| 在线观看涩涩| 欧美色图第一页| 国产一级二级av| 欧美高清免费| 欧美精品一区二区三区久久久| www.久久久久久久久久久| 玛雅亚洲电影| 精品欧美aⅴ在线网站| 日本a在线天堂| 国产日产一区二区| 国产精品乱子久久久久| 欧洲av一区| 天堂中文在线资源| 国产三级一区二区| 蜜桃av久久久亚洲精品| 国产精品刘玥久久一区| 精品久久久久久久中文字幕| 日韩xxxx视频| av激情在线| 亚洲欧美激情视频在线观看一区二区三区| 日韩av在线电影观看| 欧美高清视频| 中文字幕欧美一区| 一区二区成人国产精品 | 99久久777色| 国产精品手机在线| av电影在线观看一区二区三区| 国产午夜一区二区三区| 黄色网络在线观看| 91精品久久久久久粉嫩| 色老汉av一区二区三区| 95视频在线观看| 给我免费播放日韩视频| 亚洲激情在线视频| jizzjizz日本少妇| 国产精品久久天天影视| 欧美一区二区三区图| 亚洲成人中文字幕在线| k8久久久一区二区三区| 精品视频第一区| 日韩偷拍自拍| 中文字幕不卡在线观看| 国产免费黄视频| 91蝌蚪精品视频| 日韩电影中文字幕一区| 久久久久久久久久久久久久久| 精品理论电影在线| 日韩一中文字幕| 欧洲猛交xxxx乱大交3| 影音先锋中文字幕一区二区| 91在线国产电影| 韩国av免费在线观看| 亚洲老妇xxxxxx| 天天做天天干天天操| 欧美r级电影| 国外色69视频在线观看| 91在线你懂的| 成人美女视频在线观看18| 欧美xxxx黑人又粗又长精品| 蜜臀av国内免费精品久久久夜夜| 欧美一级理论片| 中文字幕一区二区三区人妻| 国产精品久久久久蜜臀| 国产裸体写真av一区二区 | 久久久99精品| 国产美女在线精品| 激情视频一区二区| hd国产人妖ts另类视频| 亚洲成色www8888| 日本三级网站在线观看| 男女男精品视频| 国产精品麻豆免费版| 黄页网站在线观看免费| 欧美无砖砖区免费| 日韩免费高清一区二区| 欧美xxxxx视频| 国产一区红桃视频| 亚洲欧美一区二区三| 婷婷亚洲久悠悠色悠在线播放| 男人的天堂影院| 国产模特精品视频久久久久| 日本欧洲国产一区二区| 欧美一级做一级爱a做片性| 另类色图亚洲色图| 国产精品传媒在线观看| 国产精品色哟哟网站| 日韩视频在线观看一区二区三区| 亚洲精品进入| 久久久亚洲福利精品午夜| 色婷婷av一区二区三区之e本道| 欧美视频在线免费| 四川一级毛毛片| 99热这里只有成人精品国产| 亚洲一区二区三| 日日夜夜精品一区| 在线亚洲人成电影网站色www| 97人妻精品一区二区三区免费| 香蕉综合视频| 国产精品免费一区二区三区四区| 伊人久久在线| www.日韩av.com| 色偷偷在线观看| 欧美色网站导航| 69精品久久久| 成人小视频免费在线观看| 国产美女无遮挡网站| 日韩理论电影大全| 国产精品成人免费电影| 超碰人人在线| 亚洲欧美福利视频| 99精品视频在线播放免费| 福利精品视频在线| 日本不卡一二区| 91丝袜高跟美女视频| 黄色一级视频在线播放| 波多野结衣在线观看一区二区| 欧美中在线观看| 无码精品一区二区三区在线| 欧美三电影在线| 日韩污视频在线观看| 99在线精品一区二区三区| 日韩肉感妇bbwbbwbbw| 奇米影视亚洲| 国产免费一区二区三区| 在线观看欧美| 欧美精品在线播放| 黄色的视频在线免费观看| 精品久久久久一区二区国产| 中文字幕在线观看精品| 精品日韩视频在线观看| 欧美黄色免费观看| 成人美女视频在线观看| 男女污污视频网站| 日韩国产精品久久| 在线观看福利一区| 精品国产亚洲日本| 欧美劲爆第一页| 三级无遮挡在线观看| 欧美成人精精品一区二区频| 中文字幕在线播出| 色狠狠综合天天综合综合| 国产手机在线视频| 亚洲综合在线免费观看| 免费a在线观看播放| 日韩国产成人精品| 久久久久久久久久久视频| 亚洲成人直播| 老子影院午夜伦不卡大全| 欧美久久99| 日韩不卡视频一区二区| 丁香5月婷婷久久| 91原创国产| 亚洲91网站| 日本免费在线精品| 男人av在线播放| 97超级碰碰碰久久久| 网友自拍视频在线| 中文字幕国产亚洲| 嫩草影院一区二区| 在线一区二区三区| 懂色av中文字幕| 亚洲综合视频网| 欧美人妻精品一区二区三区| 一区二区高清免费观看影视大全 | 欧美日韩在线另类| 久久青青草视频| 国产精品久久久久久亚洲毛片| 一色道久久88加勒比一| 国产欧美一区二区在线观看| 久久国产免费视频| 国产91精品一区二区麻豆亚洲| 黄色一级二级三级| 国产主播精品| 日本一本中文字幕| 亚洲久久一区二区| 综合视频免费看| 亚洲精品tv久久久久久久久久| 久久久久久久久影视| 好看的av在线不卡观看| 亚洲中文字幕无码专区| 丝袜诱惑亚洲看片| 中文字幕日韩综合| 国产91丝袜在线观看| 在线观看国产三级| 国产欧美日韩视频一区二区| av黄色免费在线观看| 尤物av一区二区| 亚洲 欧美 国产 另类| 亚洲免费观看视频| 中文在线观看免费网站| 色老综合老女人久久久| 国产三级伦理片| 亚洲精品成人网| 2017亚洲天堂1024| 欧美激情综合亚洲一二区| 亚洲国产欧美日本视频| 国产区精品在线观看| a看欧美黄色女同性恋| 国产在线欧美日韩| 色综合天天爱| 国产精品无码一区二区在线| 秋霞av亚洲一区二区三| 麻豆tv在线观看| 欧美国产激情二区三区| 国产一级二级三级| 欧美最猛黑人xxxxx猛交| av老司机久久| 欧美精品乱码久久久久久按摩| 精品无码一区二区三区的天堂| 91精品国产手机| 国产手机视频在线| 日韩av在线免费观看| 日本视频在线观看| 97国产精品视频| 密臀av在线播放| 成人啪啪免费看| 久久综合偷偷噜噜噜色| 欧美性色黄大片人与善| 少妇精品久久久| 日本一区免费| 欧美天堂亚洲电影院在线观看| 国产三级国产精品国产专区50| 美女久久久精品| 中国一级特黄录像播放| 亚洲欧洲色图综合| 久久久久久久久黄色| 在线精品国精品国产尤物884a| 亚洲精品.www| 久久亚洲综合国产精品99麻豆精品福利 | 久久久久久久亚洲精品| 日本午夜精品久久久久| 欧美重口乱码一区二区| 一区二区三区四区五区精品视频| 日韩不卡的av| 最新久久zyz资源站| av首页在线观看| 亚洲欧美日韩国产中文专区| а_天堂中文在线| 91观看网站| 亚洲国产老妈| 福利视频999| 中文乱码免费一区二区| 波多野结衣av无码| 亚洲精品网站在线播放gif| 国内精品在线视频| 国产91精品视频在线观看| 国产精品三p一区二区| www.在线观看av| 懂色av一区二区三区免费观看| 久草综合在线视频| 天天色 色综合| 懂色av成人一区二区三区| 久久影院资源网| 国产va免费精品观看精品| 国产一区二区视频在线免费观看| 欧美精品麻豆| 免费高清视频在线观看| 一区二区三区精品在线观看| 国产chinasex对白videos麻豆| 久久综合伊人77777蜜臀| www久久久| 国产欧美久久久久| 国产91精品露脸国语对白| 劲爆欧美第一页| 精品国产sm最大网站免费看| 91豆花视频在线播放| 好吊妞www.84com只有这里才有精品| 亚洲韩日在线| 熟女俱乐部一区二区| 亚洲人成网站精品片在线观看| 91麻豆视频在线观看| 久久天堂av综合合色| 天堂va欧美ⅴa亚洲va一国产| 国产91沈先生在线播放| jvid福利写真一区二区三区| 天堂中文字幕在线观看| 日韩一区二区免费高清| 蜜臀av国内免费精品久久久夜夜| 国内一区二区三区在线视频| 国产偷自视频区视频一区二区| www.狠狠爱| 欧美日韩国产综合一区二区三区 | 欧美尤物巨大精品爽| 久久91麻豆精品一区| 日本在线一二三区| 亚洲卡通动漫在线| 视频国产在线观看| 欧美xxxx18性欧美| 第四色中文综合网| 国产成人无码一二三区视频| 丰满岳乱妇一区二区三区| 日韩三级视频在线| 国产午夜精品一区二区三区| 亚洲成人高清| www在线观看免费| 国产精品萝li| 天天干天天摸天天操| 国产精品精品视频| 欧美日韩hd| 国精产品一区二区三区| 日韩一区二区三区观看| 中文字幕这里只有精品| 免费看污污视频| www精品美女久久久tv| 国产精品综合在线| 久久精品99久久久香蕉| 国产精品伦一区二区| 国产精品va在线观看无码| 国产亚洲一区字幕| 精品欧美在线观看|