jk自慰喷水,国产又粗又黄又猛又爽高潮视频,国内伦理一级伦理麻豆,亚洲成人91

哈爾濱今日靈圖

[其他技能培訓(xùn)]
獵學(xué)網(wǎng)訂閱號
獵學(xué)網(wǎng)官方企業(yè)微信
位置: 獵學(xué)網(wǎng) > 學(xué)校機構(gòu) > 哈爾濱今日靈圖 > 學(xué)習(xí)資訊> 我理想中的前端工作流 今日圖靈

我理想中的前端工作流 今日圖靈

52 2017-04-19

在日常的前端開發(fā)中,我們會遇到LESS/SASS編譯、CSS前綴自動補全、CSS壓縮、圖片壓縮、JS合并壓縮、布署發(fā)布等各種各樣的操作。通常,我們都會根據(jù)實際情況定制一個流程性的工具來實現(xiàn)所有常規(guī)的功能,這,就是我理解的前端工作流。

CssGaga

曾經(jīng),使用過一段時間的CssGaga,為它的強大功能而感到震憾,幾乎解決了所有常見的需求。

那一段時間里,習(xí)慣了CssGaga拖圖片即壓縮上傳,拖CSS文件即壓縮+合并雪碧圖上傳,拖啥就做啥。也就是說,你想要做什么操作,就手動拖拉什么文件就好了。

但隨著自己慢慢變胖,慢慢的越來越懶,有時候就想,為什么每次完成開發(fā)后,要手動拖幾次文件,而不是一鍵就搞定所有必要的功能呢?

CssGaga的模式非常值得借鑒學(xué)習(xí),特別是它的雪碧圖合成方式,見過很多優(yōu)秀的雪碧圖插件都是參照其寫法,如:grunt-sprite、gulp-tmtsprite

我理想中的工作流

一個人,想某件事,想得多了,就會有所行動,比如我曾經(jīng)喜歡的妹子,現(xiàn)在成了我的老婆。。。。。

不好意思,扯遠(yuǎn)了,繼續(xù)講我想要的工作流模式。

結(jié)合公司的工作模式和實際業(yè)務(wù)實踐,我把一個這個流程分成兩個過程:開發(fā)過程和布署過程。

1.開發(fā)過程

當(dāng)我開始開發(fā)時,我希望是所見即所得的,我的每一次代碼編輯,都能即時的響應(yīng)反饋在我面前;我用的是能提升我效率的CSS預(yù)處理語言,我希望她能即時的幫我編譯成CSS;我用rem,但我寫的是px,我希望她能幫我轉(zhuǎn)換……

我想要的開發(fā)過程很簡單,就是能幫我提升效率!

2.布署過程

開發(fā)完后,終于到了要發(fā)布的時候了。發(fā)布前,需要生成可以放到生產(chǎn)環(huán)境中的代碼,而這個過程,要做的工作有非常多,大概有如下:

Less/Sass->CSS

CSSAutoprefixer前綴自動補全

CSS壓縮合并

CSSSprite雪碧圖合成

Retina@2x&@3x自動生成適配

imagemin圖片壓縮

JS合并壓縮

EJS模版語言

我希望這個過程是一個命令或一鍵就可以完成的,而不是多次拖拉生成。

我要的流程其實很簡單,就是越簡單越好!

下面,介紹一下因此而誕生的解決方案——tmt-workflow。

tmt-workflow

tmt-workflow是一個基于Gulp(v4.0)、跨平臺(Mac&Win)、高效、可定制的前端工作流程。

功能特性

她除了實現(xiàn)了以上設(shè)想的各種功能外,還有:

基于Gulp4,超好用的流程化(gulp.series,gulp.parallel)控制API,更高的性能

跨平臺的,支持Win和Mac,滿足各類開發(fā)者

所有項目共享一個node_modules,只需一次npminstall即可

可定制的,你可以根據(jù)自己的需求修改實現(xiàn)你自己想要的功能

自帶rem適配方案、智能Webp解決方案、去緩存文件Reversion(MD5)解決方案

快速開始

以下2種方式任選,請確保已安裝Node.js環(huán)境

使用Yoeman腳手架generator-workflow自動安裝(推薦):

npminstall-ggenerator-workflow

yoworkflow

直接下載安裝:

全局安裝Gulp4,執(zhí)行:npminstallgulpjs/gulp#4.0-g

點擊下載tmt-workflow,進入根目錄執(zhí)行:npminstall

注1:Gulp4目前尚未正式發(fā)布,Windows用戶請先安裝git,

然后在GitBash下執(zhí)行npminstall即可(非CMD)。

注2:如遇npminstall網(wǎng)絡(luò)問題,推薦嘗試pm安裝環(huán)境依賴

工作流目錄結(jié)構(gòu)

tmt-workflow/

├──_tasks//Gulp任務(wù)目錄

│├──TaskBuildDev.js//gulpbuild_dev

│├──TaskBuildDist.js//gulpbuild_dist

│├──TaskFTP.js//gulpftp

│├──TaskZip.js//gulpzip

││

│├──mon

││└──webp.js

││

│├──index.js

││

│├──lib

││└──util.js

││

│└──plugins//插件目錄

│├──TmTIndex.js

│└──ftp.js

├──package.json

└──project//項目目錄,詳見下述項目結(jié)構(gòu)↓↓↓

├──src

├──dev

├──dist

└──gulpfile.js

項目目錄結(jié)構(gòu)

project///項目目錄

├──gulpfile.js//Gulp工作流配置文件

├──src//源文件目錄,`gulpbuild_dev`階段會此目錄下的文件變動

│├──css//存放Less文件的目錄,只有style-*.less的文件名會被編譯

││├──lib-reset.less

││├──lib-mixins.less

││├──lib-rem.less

││└──style-index.less//CSS編譯出口文件

││

│├──

│├──img//存放背景圖等無需合并雪碧圖處理的圖片

│└──slice//切片圖片素材,將會進行雪碧圖合并,同名@2x圖片也會合并

│├──icon-dribbble.png

│└──icon-dribbble@2x.png

├──dev//開發(fā)目錄,由`gulpbuild_dev`任務(wù)生成

│├──css

│├──

│├──img

│└──slice//開發(fā)階段,僅從src/slice拷貝至此,不做合并雪碧圖處理

└──dist//生產(chǎn)目錄,由`gulpbuild_dist`任務(wù)生成

├──css

├──

├──img

└──sprite//將/src/slice合并雪碧圖,根據(jù)/css文件名,命名為style-*.png

├──style-index.png

└──style-index@2x.png

配置文件.tmtworkflowrc

.tmtworkflowrc配置文件,位于工作流根目錄,可存放配置信息或開啟相關(guān)功能,

如:FTP配置信息、開啟WebP功能,開啟REM支持等。

{

//FTP發(fā)布配置

"ftp":{

"host":"xx.xx.xx.xx",

"port":"8021",

"user":"tmt",

"pass":"password",

"remotePath":"remotePath",//默認(rèn)上傳至根目錄,此屬性可指定子目錄路徑

"includeHtml":true//FTP上傳時是否包含文件

},

//瀏覽器自動刷新

"livereload":{

"available":true,//開啟

"port":8080,

"startPath":/TmTIndex"http://啟動時自動打開的路徑

},

//插件功能

//路徑相對于tasks/plugins目錄

"plugins":{

"build_devAfter":["TmTIndex"],//build_dev任務(wù)執(zhí)行完成后,自動執(zhí)行

"build_distAfter":[],//build_dist任務(wù)執(zhí)行完成后,自動執(zhí)行

"ftpAfter":["ftp"]//ftp任務(wù)執(zhí)行完成后,自動執(zhí)行

},

"lazyDir":["../slice"],//gulp-lazyImageCSS啟用目錄

"supportWebp":false,//開啟WebP解決方案

"supportREM":false,//開啟REM適配方案,自動轉(zhuǎn)換px->rem

"reversion":false//開啟新文件名md5功能

}

任務(wù)簡要說明

1.開發(fā)任務(wù)gulpbuild_dev

按照目錄結(jié)構(gòu)創(chuàng)建好項目后,執(zhí)行g(shù)ulpbuild_dev生成開發(fā)文件位于/dev,包含以下過程

完成ejs->和less->css編譯

自動文件改動,觸發(fā)瀏覽器刷新

注:瀏覽器刷新功能可在.tmtworkflowrc中進行配置,默認(rèn)開啟。

2.生產(chǎn)任務(wù)gulpbuild_dist

開發(fā)完成后,執(zhí)行g(shù)ulpbuild_dist生成最終文件到/dist目錄,包含以下過程:

LESS/EJS編譯

CSS/JS/IMG壓縮合并

slice圖片合并成雪碧圖

文件添加版本號

WebP圖片支持

3.FTP部署gulpftp

依賴于生產(chǎn)任務(wù),執(zhí)行后,會先執(zhí)行g(shù)ulpbuild_dist,然后將其生成的/dist目錄上傳至.tmtworkflowrc指定的FTP服務(wù)器。

4.打包任務(wù)gulpzip

依賴于生產(chǎn)任務(wù),執(zhí)行后,會先執(zhí)行g(shù)ulpbuild_dist,然后將其生成的/dist目錄壓縮成zip格式。

注1:./src為源文件目錄,/dev和/dist目錄為流程自動生成的目錄。

注2:FTP和zip任務(wù)執(zhí)行后會自動刪除/dist目錄。

使用預(yù)覽

推薦配合WebStorm等編輯器的Gulp任務(wù)管理器使用更佳。

我理想中的前端工作流 今日圖靈

tmt-workflow具有良好的定制性和擴展性,用戶可針對自身團隊的具體需求定制,更多可查看:

Github:https://github/weixin/tmt-workflow

Wiki:https://github/weixin/tmt-workflow/wiki

最后,或許你會問:為什么叫tmt-workflow?

TmT:我們的組名,TencentMoeTeam。

工作流的名字隨意,你也可以根據(jù)你們自己的習(xí)慣自由發(fā)揮,比如Aoisola、YuiHatano、TakizawaRola。

溫馨提示: 專業(yè)老師1對1為您解答    馬上填寫,¥1000 元豪禮免費領(lǐng)!

掃一掃
獲取更多福利

×
獵學(xué)網(wǎng)