VS2015集成新潮工具4


VS2015集成新潮工具(四)

 

         本課程來源與微軟connect視頻教程,Modern Web Tooling in Visual Studio 2015

         本課程主要講下當下流行的前端工具 bower和grunt

         首先簡單介紹下這倆貨是干什么,然后再講下在vs2015中怎么用

一、bower和grunt介紹

         bower是twitter開源的一款web包(如bootstrap、jquery)管理,依托github上越來越多的開源web(html+css+js)項目,bower只需要github項目加一個配置文件就可以使用bower方式管理。bower提供了web包的添加、升級、刪除、發布,以及管理包依賴,只需命令方式,即可輕松管理,再也不需要去手工下載拷貝文件了。

         bower是依賴npm安裝的,但現在vs新建web項目時,已實現自動加載了,所以很省事。具體控制台命令如何使用參考此文章

         grunt在官網上稱之為javascript世界的構建工具,它的主要功能就是實現自動化,如壓縮js css、編譯、單元測試、linting(css代碼檢查)等

         總結一下,就如視頻中說的,bower類似於nuget,不過是服務於web前端的,同時vs也支持npm,即vs2015內置了兩款web前端的包管理工具:bower和npm。而grunt和gulp則提供了web前端的編譯功能,以及壓縮等(具體可看下圖說明)。這樣vs的前后端編譯都將支持,更牛了啊。

image

二、bower和npm在vs中的使用

        vs新建Asp.Net5 Starter Web項目后,會自動在項目中加載前端依賴,,如下圖

image

bower對應項目中的bower.json文件,此文件包含了你需要的依賴包,如bootstrap,jquery等,在此文件中編寫需要的依賴包,和相應的版本

vs會給予智能感知。具體看下圖。

image

也可以鼠標懸浮在上面,上面會顯示出下載安裝包,如下圖

image

         相應的package.json則對應npm包管理工具,同bower一樣,也有智能感知,如下圖,感覺這里面的智能感知要優於bower.json的

image

保存后,在項目的右側即可看到grunt-contrib-cssmin未安裝,右鍵選擇restore package會自動下載該安裝包。

image

如果bower和npm中的包,都未下載,則在項目重新打開的時候,這些包依賴同nuget的包管理一樣,會自動初始化下載安裝這些包,非常方便智能。

         在package.json中你會發現,bower里的庫package.json中也能下,如bootstrap,jquery等,那我直接在package.json中寫不就完了,但你會發現,這里面寫的包文件,不會下載到wwwroot/lib文件夾下,而是配合gruntfile.js的loadNpmTasks方法。

         這樣你不用安裝node和npm,你就可以在vs中暢快的使用bower和npm了。

三、grunt在vs中的使用

打開view—>other windows—>Task Runner Explorer,即打開grunt的任務運行面板

         1、在里面分為alias tasks和tasks,其中alias中的任務,是通過在gruntfile中注冊任務得來 grunt.registerTask("default", ["bower:install"]);

而tasks則是由 grunt.loadNpmTasks("grunt-contrib-copy")得來,這些包需要提前通過package.json聲明好。

image

         2、通過在任務上,右鍵run,進行執行壓縮、編譯等操作。

image

 

         3、實例:執行對wwwroot/css/pagination.css文件的壓縮

              a)首先我要先下載npm包,在package.json中輸入    "grunt-contrib-cssmin": "^0.10.0" ,並安裝該npm包

              b)在gruntfile.js的initConfig初始化該任務,輸入如下code

 cssmin: {
minify: {
src: 'wwwroot/css/pagination.css',
dest: 'wwwroot/css/pagination-mini.css'
}
}

                 並在gruntfile.js中注冊該任務 grunt.registerTask("cssmin", ["cssmin:minify"]);

              c)Task Runner Explorer中刷新,則Tasks的cssmin 下面就會多出一個minify,右鍵執行run即可。具體如下圖:

image

喜歡就支持下吧,您的支持是我最大的動力!

 
分類:  DIV+CSSJavascript


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM