nodejs用gulp管理前端文件方法
1、安裝node.js(https://nodejs.org/en/)
安裝后使用node -v查看版本
node安裝完之后會(huì)順帶安裝npm
ps:npm其實(shí)是Node.js的包管理工具(package manager)為啥我們需要一個(gè)包管理工具呢?因?yàn)槲覀冊(cè)贜ode.js上開發(fā)時(shí),會(huì)用到很多別人寫的JavaScript代碼。如果我們要使用別人寫的某個(gè)包,每次都根據(jù)名稱搜索一下官方網(wǎng)站,下載代碼,解壓,再使用,非常繁瑣。于是一個(gè)集中管理的工具應(yīng)運(yùn)而生:大家都把自己開發(fā)的模塊打包后放到npm官網(wǎng)上,如果要使用,直接通過(guò)npm安裝就可以直接用,不用管代碼存在哪,應(yīng)該從哪下載。更重要的是,如果我們要使用模塊A,而模塊A又依賴于模塊B,模塊B又依賴于模塊X和模塊Y,npm可以根據(jù)依賴關(guān)系,把所有依賴的包都下載下來(lái)并管理起來(lái)。
同樣用npm -v查看版本
2、安裝gulp插件:npm install -g gulp
3、本地創(chuàng)建一個(gè)項(xiàng)目文件并用gulp管理
1>在D盤創(chuàng)建要給空文件夾Gulp_Test 。Win+R打開命令窗口并定位到當(dāng)前項(xiàng)目目錄,然后輸入指令:npm init 回車(有g(shù)it的童鞋在文件夾里直接右鍵 git bash here也可),命令執(zhí)行期間會(huì)提示輸入一些關(guān)于項(xiàng)目的描述信息,非必填一路回車即可。
完成之后文件夾中會(huì)生成一個(gè)package.json文件。
2>執(zhí)行以下命令
//本地安裝: npm install gulp --save-dev (gulp插件)
//本地安裝: npm install gulp-concat --save-dev (合并插件)
//本地安裝:npm install gulp-uglify --save-dev (壓縮插件)
至此,所有準(zhǔn)備工作已就緒,開始管理我們的項(xiàng)目吧。
(1)在項(xiàng)目根目錄創(chuàng)建一個(gè)名為gulpfile.js的js文件
(2)在根目錄新建js文件夾,并在文件夾中新建兩個(gè)js文件,代碼如下:
index.js:
var index={}; index={ test:function(argument){ console.log('test'); } } index.test();
main.js:
var main = {}; main.test=function(argument){ console.log("main test"); } main.test();
(3)在根目錄創(chuàng)建build文件夾,用來(lái)存放打包后的文件
(4)編輯第(1)步創(chuàng)建的gulpfile.js文件,內(nèi)容如下:
var fs = require('fs'); var gulp = require('gulp');//gulp自身 var uglify= require('gulp-uglify');//引入壓縮組件 var concat = require('gulp-concat');//引入合并組建 gulp.task('taskName', function() { // 找到src目錄下的所有文件夾中的所有js文件 return gulp.src('js/*.js') .pipe(uglify())//壓縮 .pipe(concat('all.min.js'))//輸入到all.min.js中 .pipe(gulp.dest('./build'))//指定目錄 .on('end', callback);//結(jié)束事件回調(diào) }); //檢查文件體積 function callback() { var path = "./build/all.min.js"; var exists = fs.existsSync(path); if (!exists) { return; } var states = fs.statSync(path); console.log("file size:" + Math.ceil(states.size / 1024) + "kb"); }
PS:taskName為變量,任務(wù)名??梢远x多個(gè)task,并根據(jù)glup+taskName執(zhí)行不同的task
(5)執(zhí)行g(shù)ulp命令 :gulp taskName
(6)執(zhí)行成功之后檢查build文件是否有all.min.js生成
Don't go too far and forget why starting!
- nodejs實(shí)現(xiàn)簡(jiǎn)單的gulp打包
- gulp安裝以及打包合并的方法教程
- Angular.js項(xiàng)目中使用gulp實(shí)現(xiàn)自動(dòng)化構(gòu)建以及壓縮打包詳解
- node.js中g(shù)runt和gulp的區(qū)別詳解
- 使用bat打開多個(gè)cmd窗口執(zhí)行g(shù)ulp、node
- 在Mac OS上安裝使用Node.js的項(xiàng)目自動(dòng)化構(gòu)建工具Gulp
- 基于Node.js的JavaScript項(xiàng)目構(gòu)建工具gulp的使用教程
- 前端必會(huì)的輕量打包工具gulp使用詳解
相關(guān)文章
node.js學(xué)習(xí)之?dāng)嘌詀ssert的使用示例
assert 模塊主要用于編寫程序的單元測(cè)試時(shí)使用,通過(guò)斷言可以提早發(fā)現(xiàn)和排查出錯(cuò)誤。下面這篇文章主要給大家介紹了關(guān)于node.js學(xué)習(xí)之?dāng)嘌詀ssert的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09node.js根據(jù)不同請(qǐng)求路徑返回不同數(shù)據(jù)詳解流程
本篇文章介紹了我在開發(fā)過(guò)程中發(fā)現(xiàn)的一個(gè)小問(wèn)題,就是node.js如何能夠根據(jù)不同的請(qǐng)求路徑來(lái)返回得到不同數(shù)據(jù),通讀本篇對(duì)大家的學(xué)習(xí)或工作具有一定的價(jià)值,需要的朋友可以參考下2021-10-10Node.js包管理器代理工具Verdaccio輕松創(chuàng)建管理本地npm包倉(cāng)庫(kù)
這篇文章主要為大家介紹了Node.js包管理器代理工具Verdaccio輕松創(chuàng)建管理本地npm包倉(cāng)庫(kù)的使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10node.js中的http.response.write方法使用說(shuō)明
這篇文章主要介紹了node.js中的http.response.write方法使用說(shuō)明,本文介紹了http.response.write的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12export?default?和?export?的使用方式示例詳解
這篇文章主要介紹了export?default?和?export?的使用方式,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08Nodejs中session的簡(jiǎn)單使用及通過(guò)session實(shí)現(xiàn)身份驗(yàn)證的方法
session的本質(zhì)使用cookie來(lái)實(shí)現(xiàn)。本文給大家介紹Nodejs中session的簡(jiǎn)單使用及通過(guò)session實(shí)現(xiàn)身份驗(yàn)證的方法,對(duì)node.js session相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2016-02-02Node使用Sequlize連接Mysql報(bào)錯(cuò):Access denied for user ‘xxx’@‘localh
這篇文章主要給大家介紹了關(guān)于Node使用Sequlize連接Mysql報(bào)錯(cuò):Access denied for user 'xxx'@'localhost'的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01express框架通過(guò)ejs模板渲染輸出頁(yè)面實(shí)例分析
這篇文章主要介紹了express框架通過(guò)ejs模板渲染輸出頁(yè)面的方法,結(jié)合實(shí)例形式分析了express框架使用ejs模版引擎渲染輸出的相關(guān)操作技巧與使用注意事項(xiàng),需要的朋友可以參考下2023-05-05