一、contrib-watch 插件的使用
專業(yè)從事成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì),高端網(wǎng)站制作設(shè)計(jì),微信小程序開(kāi)發(fā),網(wǎng)站推廣的成都做網(wǎng)站的公司。優(yōu)秀技術(shù)團(tuán)隊(duì)竭力真誠(chéng)服務(wù),采用H5頁(yè)面制作+CSS3前端渲染技術(shù),成都響應(yīng)式網(wǎng)站建設(shè),讓網(wǎng)站在手機(jī)、平板、PC、微信下都能呈現(xiàn)。建站過(guò)程建立專項(xiàng)小組,與您實(shí)時(shí)在線互動(dòng),隨時(shí)提供解決方案,暢聊想法和感受。
1、安裝 “grunt-contrib-watch ”插件命令(在終端進(jìn)入到項(xiàng)目根目錄執(zhí)行)
npm install grunt-contrib-watch grunt-contrib-concat grunt-contrib-uglify --save-dev
2、在項(xiàng)目根目錄下提供 watch 插件任務(wù)配置需要的 src 目錄和源文件(源文件放置到 src 目錄下)
mkdir src
3、在 Gruntfile.js 文件中對(duì) watch 任務(wù)進(jìn)行配置
// 包裝函數(shù)
module.exports = function (grunt) {
// 任務(wù)配置,所有插件的配置信息
grunt.initConfig({
// 獲取 package.json 的信息
pkg: grunt.file.readJSON('package.json'),
// concat 插件的配置信息
concat: {
options: {
separator: ';', // 設(shè)置輸出文件合并的字符
banner: '/*被合成的文件第一行內(nèi)容說(shuō)明文字信息*/',
footer: '/*被合成的文件尾部?jī)?nèi)容說(shuō)明文字信息*/',
stripBanners: true // 去掉被合成的文件內(nèi)容中的 /* */ 注釋信息
},
// 具體任務(wù)配置
dist: {
// 被合并的文件路徑
src: ['src/zepto.js','src/jquery.js','src/swiper.js','src/commons.js'],
// 被合成的文件路徑
dest: 'dest/libs.js'
}
},
// uglify 插件的配置信息
uglify: {
// 文件頭部輸出信息
options: {
banner: '/*! <%= pkg.file %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
// 具體任務(wù)配置
build: {
// 源文件
src: 'dest/libs.js',
// 目標(biāo)文件
dest: 'dest/libs.min.js'
}
},
// watch 插件的配置信息
watch: {
// 具體任務(wù)配置
scripts: {
options: {
spawn: true // 是否讓所有 task 任務(wù)共享一個(gè)上下文環(huán)境,加快響應(yīng)時(shí)間
},
files: ['src/*.js'],
tasks: ['default']
}
}
});
// 加載指定插件任務(wù)
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-uglify');
// 默認(rèn)執(zhí)行的任務(wù)
grunt.registerTask('default', ['concat','uglify']);
};
PS:watch 插件的配置有三項(xiàng):
“options”中通過(guò)使用 spawn 屬性來(lái)指定不論由 tasks 觸發(fā)的任務(wù)是不是一個(gè)子進(jìn)程,當(dāng)此選項(xiàng)設(shè)置為 false 時(shí)都可以加快響應(yīng)的時(shí)間(大概是500ms),并且能讓后來(lái)的 tasks 可以共享一個(gè)上下文環(huán)境,但這容易讓這個(gè) watch 失效!
“files”中指定 watch 任務(wù)需要監(jiān)視的文件。
“tasks”中指定當(dāng)監(jiān)視文件發(fā)生改變時(shí)需要執(zhí)行的任務(wù)。
4、最后在終端運(yùn)行 "grunt watch" 命令
PS:如果提示 "Running "watch" task Waiting..." 證明就沒(méi)什么問(wèn)題了。想要停止 watch 任務(wù)按 ctrl + c 即可。