最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在Mac OS上安裝使用Node.js的項(xiàng)目自動(dòng)化構(gòu)建工具Gulp

 更新時(shí)間:2024年08月15日 17:18:25   投稿:goldensun  
Gulp是一個(gè)在使用上比Grunt更加簡(jiǎn)潔的自動(dòng)化工具(文中附有對(duì)比),和Node的npm包管理器配合使用非常方便,下面就記錄一下在Mac OS上安裝使用Node.js的項(xiàng)目自動(dòng)化構(gòu)建工具Gulp的方法:

安裝 node.js
首先需要安裝 node.js, 通常情況下,只需要到 Node.js 官網(wǎng)下載安裝包安裝就可以了。不過我可恥的失敗了,彈出了如下錯(cuò)誤:

2016618103000328.jpg (732×550)

于是我換成了 brew 大法:

brew install nodejs

安裝 Gulp

gulp 使用 Node.js 的 npm 命令安裝:

npm install --global gulp

然后在項(xiàng)目目錄中還要安裝一遍:

npm install --save-dev gulp

我對(duì)這步的操作比較費(fèi)解。以我多年碼農(nóng)經(jīng)驗(yàn),即然全局安裝過了,應(yīng)該就可以在作何地方使用了。但 gulp 顯然不是這樣。如果不在項(xiàng)目目錄中執(zhí)行這一步,使用 gulp 命令時(shí)會(huì)提示以下錯(cuò)誤:

… Local gulp not found in …

… Try running: npm install gulp

最后在項(xiàng)目目錄中執(zhí)行一下 gulp 命令,如果輸出以下內(nèi)容,那就表示安裝好了:

… No gulpfile found

簡(jiǎn)單例子

下面展示使用 Gulp 構(gòu)建一個(gè)靜態(tài)網(wǎng)站開發(fā)服務(wù)端,并且支持實(shí)時(shí)刷新(livereload)功能。

首先需要安裝 livereload 的瀏覽器插件,插件地址:http://livereload.com/extensions/,支持 Chrome, Firefox, Safari 三大瀏覽器。插件安裝后,會(huì)在瀏覽器上出現(xiàn)一個(gè)按鈕,這個(gè)按鈕有兩個(gè)狀態(tài),實(shí)心圓點(diǎn)表示插件已啟用,空心圓點(diǎn)表示插件未啟用。切記切記!

然后創(chuàng)建一個(gè)簡(jiǎn)單的項(xiàng)目結(jié)構(gòu):

./gulpfile.js
./public/
./public/index.html

使用以下命令安裝 gulp 和相關(guān)的組件:

npm install --save-dev gulp gulp-connect

gulp-connect 是 gulp 插件,提供了靜態(tài) web 服務(wù)端功能,并整合了 livereload 功能。

接下來需要編輯 gulpfile.js 文件,內(nèi)容如下:

var gulp = require('gulp'),
    connect = require('gulp-connect')

  gulp.task('server', function() {
    connect.server({
      root: 'public',
      livereload: true
    })
  })

  gulp.task('html', function() {
    gulp.src('./public/*.html').pipe(connect.reload())
  })

  gulp.task('watch', function() {
    gulp.watch(['./public/*.html'], ['html'])
  })

  gulp.task('default', ['watch', 'server'])

最后運(yùn)行這個(gè) web 服務(wù)器:

gulp
打開瀏覽器,訪問 http://localhost:4000。然后嘗試修改 index.html 文件的內(nèi)容后保存,正常情況下,瀏覽器端應(yīng)該會(huì)自動(dòng)刷新并顯示修改后的內(nèi)容。


Gulp與Grunt簡(jiǎn)單對(duì)比
讓我們來看個(gè)范例,分別在Gulp及Grunt建構(gòu)Sass:

Grunt:

sass: { 
 dist: {
  options: {
   style: 'expanded'
  },
  files: {
   'dist/assets/css/main.css': 'src/styles/main.scss',
  }
 }
},

autoprefixer: { 
 dist: {
  options: {
   browsers: [
    'last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'
   ]
  },
  src: 'dist/assets/css/main.css',
  dest: 'dist/assets/css/main.css'
 }
},

grunt.registerTask('styles', ['sass', 'autoprefixer']); 

Grunt需要各別配置,指定其來源與目的路徑。例如,我們將一個(gè)檔案作為Sass的輸入,并儲(chǔ)存輸出結(jié)果。在設(shè)置Autoprefixer時(shí),需要將Sass的輸出結(jié)果作為輸入,產(chǎn)生出一個(gè)新檔案。來看看在Gulp中同樣的配置:

Gulp:

gulp.task('sass', function() { 
 return gulp.src('src/styles/main.scss')
  .pipe(sass({ style: 'compressed' }))
  .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
  .pipe(gulp.dest('dist/assets/css'))
});

在Gulp中我們只需要輸入一個(gè)檔案即可。經(jīng)過Sass處理,再傳到Autoprefixer,最終取得一個(gè)檔案。這樣的流程加快建構(gòu)過程,省去讀取及寫出不必要的檔案,只需要最終的一個(gè)檔案。

相關(guān)文章

  • Node.js中調(diào)用mysql存儲(chǔ)過程示例

    Node.js中調(diào)用mysql存儲(chǔ)過程示例

    這篇文章主要介紹了Node.js中調(diào)用mysql存儲(chǔ)過程示例,本文在windows環(huán)境測(cè)試通過,本文一并給出了創(chuàng)建數(shù)據(jù)庫(kù)、錄入數(shù)據(jù)、創(chuàng)建存儲(chǔ)過程、調(diào)用存儲(chǔ)過程等例子,需要的朋友可以參考下
    2014-12-12
  • 詳解node HTTP請(qǐng)求客戶端 - Request

    詳解node HTTP請(qǐng)求客戶端 - Request

    Request是一個(gè)Node.jsNPM模塊,它是一個(gè)HTTP客戶端,使用簡(jiǎn)單功能確十分強(qiáng)大
    2017-05-05
  • 淺析node.js的模塊加載機(jī)制

    淺析node.js的模塊加載機(jī)制

    這篇文章主要介紹了淺析node.js的模塊加載機(jī)制,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • 初識(shí)Node.js

    初識(shí)Node.js

    本文給大家介紹的是node.js的初體驗(yàn),從最簡(jiǎn)單的內(nèi)容開始,慢慢的深入分析node.js。并附上一則很不錯(cuò)的文章《7天學(xué)會(huì)nodeJS》更加詳細(xì)的向我們展示了node.js的學(xué)習(xí)步驟。
    2015-03-03
  • 解決node-webkit 不支持html5播放mp4視頻的方法

    解決node-webkit 不支持html5播放mp4視頻的方法

    本文給大家分享的是解決node-webkit 不支持html5播放mp4視頻的方法,其原因大概是因?yàn)閚ode-webkit沒有購(gòu)買mp4格式的專利授權(quán),恩,我們來想個(gè)辦法來解決這個(gè)事情吧。
    2015-03-03
  • Node.js實(shí)現(xiàn)登陸注冊(cè)功能

    Node.js實(shí)現(xiàn)登陸注冊(cè)功能

    這篇文章主要為大家詳細(xì)介紹了Node.js實(shí)現(xiàn)登陸注冊(cè)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • 詳解從NodeJS搭建中間層再談前后端分離

    詳解從NodeJS搭建中間層再談前后端分離

    這篇文章主要介紹了詳解從NodeJS搭建中間層再談前后端分離,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-11-11
  • Node使用koa2實(shí)現(xiàn)一個(gè)簡(jiǎn)單JWT鑒權(quán)的方法

    Node使用koa2實(shí)現(xiàn)一個(gè)簡(jiǎn)單JWT鑒權(quán)的方法

    這篇文章主要介紹了Node使用koa2實(shí)現(xiàn)一個(gè)簡(jiǎn)單JWT鑒權(quán)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 詳解Nodejs mongoose

    詳解Nodejs mongoose

    Mongoose 是在nodejs環(huán)境下,對(duì)mongodb進(jìn)行便捷操作的對(duì)象模型工具。本文介紹解(翻)密(譯)Mongoose插件。這篇文章給大家詳細(xì)介紹了Nodejs mongoose 的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2018-06-06
  • nodejs實(shí)現(xiàn)爬取網(wǎng)站圖片功能

    nodejs實(shí)現(xiàn)爬取網(wǎng)站圖片功能

    給大家通過一個(gè)實(shí)例來教學(xué)如何用nodejs實(shí)現(xiàn)爬取網(wǎng)站圖片功能,有興趣的朋友收藏一下吧。
    2017-12-12

最新評(píng)論

贡觉县| 湘阴县| 万宁市| 汉寿县| 五指山市| 塔城市| 耿马| 民勤县| 农安县| 灵璧县| 宜兴市| 嘉定区| 黄龙县| 尼勒克县| 九江市| 沽源县| 永川市| 云和县| 夏河县| 慈利县| 广灵县| 寿光市| 玛多县| 阜平县| 武宁县| 荔波县| 聊城市| 杂多县| 衡水市| 开封县| 萨嘎县| 东至县| 南乐县| 仪陇县| 奇台县| 巴里| 新营市| 东乡县| 延川县| 巍山| 历史|