設定 Bootstrap/SASS/Bower/gulp (Windows平台)
請注意:在進行以下步驟前,你會需要先安裝git,可以參考這篇 git安裝教學
前言
時至今日,幾乎每個人都在討論bootstrap、less 或 sass。我們知道它們是比較新的前端技術,而且有開始愈來愈流流行的趨勢,但是到底要怎麼使用它們?
想像一下我們現在有個新的專案會需要使用到 bootstrap,但是我們也想要做點修改,該怎麼做呢?
假設你已經知道什麼是 Bootstrap 與 SASS,但是我們不知道要從哪裡開始才好,這個教學將會教你如何為你的專案設定一些輔助工具。
1. 安裝 node.js
如果你不知道什麼是 node.js,請參考 http://nodejs.org/ ,基本上你會需要安裝 node.js 來安裝 gulp 與 bower。要安裝 node.js 相當容易,到 http://nodejs.org/download/ 為你使用的作業系統下載安裝套件,你應該只需要下載與安裝 msi 檔案。
在完成安裝後,開啟你的命令提示字元(cmd.exe),輸入 ‘node -v’ 後你應該會看到這個畫面:
如果你看到 ‘指定的名稱無法辨識為內部或外部命令、 可執行的程式或批次檔中。’ (‘node’ is not recognized as an internal or external command….) ,這裡有解決方式
2. 安裝 SASS
在你開始使用 Sass 之前,你會需要安裝 Ruby ,最快的方式就是使用 Ruby 安裝套件來安裝在你的Windows電腦上,這是個快速安裝套件,只要點一下滑鼠就可以輕鬆的把 Ruby 快速安裝好。這個安裝套件也會安裝 Ruby 命令列介面應用程式來讓你使用Ruby函式庫。
一旦你成功安裝了 Ruby,你可以開啟命令提示字元,輸入 ‘gem install sass’ :
3. 安裝 Bower(非必需)
Bower 是一個套件管理程式,它可以幫助你從 git 上面下載像是 jQuery 或是 bootstrap 的許多套件,它也可以幫助你方便更新套件,你可以在http://bower.io/找到更多資訊
安裝 bower 相當簡單,只要開啟命令提示字元,然後輸入:
npm install -g bower
(請注意,在你安裝 bower 之前,你需要先安裝 node.js 與 git )
4. 下載 bootstrap
一旦你已經安裝bower,你可以輕鬆利用命令提示字元輸入指令下載 bootstrap (我愛打指令:) ),如果你沒安裝 bower 也沒關係,你可以到 http://getbootstrap.com/getting-started/#download 下載,請確定你下載的是 Sass 版本,因為我們要用的是 Sass。
要利用 bower 下載,開啟命令提示字元,進入專案目錄,例如 : “C:\sites\test\trunk\wp-content\themes\vantage” ,然後輸入:
bower search bootstrap
基本上,bower 會搜尋 git 軟體倉庫裡有 ‘bootstrap’ 的所有套件,因為 bootstrap 的相關套件很多,你會得到一份很長的搜尋結果,我們要找的是 ‘bootstrap-sass-official’。
命令提示字元輸入:
bower install bootstrap-sass-official
你大概注意到它也幫你下載了 jquery 套件,因為 bootstrap 的 javascript 必需依賴 jQuery。不過如果你是開發
WordPress 專案的話,其實你並不需要使用到它幫你下載的 jQuery ,因為 WordPress 本身已經內建 jQuery 了。
5. 安裝/設定 gulp
現在我們已經安裝了許多的小工具,gulp 可以幫我們把這些小工具全部連結起來。Getting Started With Gulp 是一個非常好的教學,它可以教你如何安裝設定好 gulp。現在假設你是開啟命令提示字元,而且你還是在你的專案目錄底下(我的是 “C:\sites\test\trunk\wp-content\themes\vantage”)。
建立 package.json
在命令提示字元, 輸入:
npm init
這會建立 package.json 檔案來提供關於我們專案的資訊,而且也幫助管理我們的相依套件。它會問你名稱、版本與其它的問題,只要輸入相關的內容然後按Enter。
全局安裝 gulp
在命令提示字元, 輸入:
npm install -g gulp
這會安裝gulp,而且將來的專案再也不需要再安裝一次
本地安裝 gulp
在命令提示字元, 輸入:
npm install --save-dev gulp
6. 測試一下
現在我們希望使用 gulp 來幫我們把使用 bootstrap 的 scss 檔做編譯,首先我們需要安裝以下的外掛:
在命令提示字元, 輸入:
npm install gulp-sass --save-dev
現在該裝的都裝好了,讓我們來看一下 gulp 和 sass 能幫我們做些什麼。在專案目錄底下,我已經建立了一個 scss 的目錄名稱來存放我的 sass 或 scss 檔,而且我也建立了一個檔案叫做 gulpfile.js 內容如下:
var gulp = require('gulp');
// Include 外掛
var sass = require('gulp-sass');
// 編譯 Sass
gulp.task('sass', function() {
return gulp.src('scss/*.scss')
.pipe(sass())
.pipe(gulp.dest('css'));
});
/**
sass 工作會編譯任何在 scss/ 目錄底下的 .Sass 檔,而且會把檔案存在 css/ 底下為 .css 檔
**/
// Watch Files For Changes
gulp.task('watch', function() {
gulp.watch('scss/*.scss', ['sass']);
});
// 預設工作
gulp.task('default', ['sass']);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
// Include gulp
var gulp = require('gulp');
// Include 外掛
var sass = require('gulp-sass');
// 編譯 Sass
gulp.task('sass', function() {
return gulp.src('scss/*.scss')
.pipe(sass())
.pipe(gulp.dest('css'));
});
/**
sass 工作會編譯任何在 scss/ 目錄底下的 .Sass 檔,而且會把檔案存在 css/ 底下為 .css 檔
**/
// Watch Files For Changes
gulp.task('watch', function() {
gulp.watch('scss/*.scss', ['sass']);
});
// 預設工作
gulp.task('default', ['sass']);
|
為了做測試,我在 scss 目錄內建立了一個 test.scss 檔,內容如下。請注意,我已經從 bower 元件匯入了 bootstrap 的 scss 檔,所以如果你不是使用 bower ,你可以更改指向你的 bootstrap 檔的路徑。
nav {
ul {
margin: 0;
padding: 0;
list-style: none;
}
li { display: inline-block; }
a {
display: block;
padding: 6px 12px;
text-decoration: none;
}
}
.myscss {
@extend .col-sm-1;
border-color: red;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
@import '../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap';
nav {
ul {
margin: 0;
padding: 0;
list-style: none;
}
li { display: inline-block; }
a {
display: block;
padding: 6px 12px;
text-decoration: none;
}
}
.myscss {
@extend .col-sm-1;
border-color: red;
}
|
現在在命令提示字元, 輸入: ‘gulp’ 來執行你的預設工作,或是 ‘gulp sass’ 來執行特定的工作,這其實就跟我們目前的狀況一樣,在預設工作列表裡只有一個工作需要執行。
gulp
你應該會看到
現在如果我們到 css 目錄,我們應該會看到 test.css 已經建立了,bootstrap 與 我們自訂的 style 都在裡面,搞定
转载:http://www.innovext.com/tw/2014/07/11/%E8%A8%AD%E5%AE%9A-bootstrapsassbowergulp-windows%E5%B9%B3%E5%8F%B0/
設定 Bootstrap/SASS/Bower/gulp (Windows平台)的更多相关文章
- ASP.NET MVC 4 部署到 Windows Azure 如何轉換時區設定
由於公司慢慢地開始將新的專案都移往 Windows Azure 雲端平台做網站代管,漸漸地也開始遇到一些小問題,這些問題在還沒上雲端之前通常不會發生,像我們這次遇到的問題就跟顯示時間有關.由於 Win ...
- Windows的免費hMailServer搭配SpamAssassin過濾垃圾郵件:安裝與設定
http://jdev.tw/blog/1677/hmailserver-with-spamassassin-sawin32 為了解決垃圾信泛濫的狀況,這兩天「跨界」測試了運行在Windows上的免費 ...
- 在Windows驗證網站設定部分匿名存取
最近接連遇到幾次的需求:供內部使用的ASP.NET網站,全站使用Windows驗證,使用者以網域AD帳號登入,但網站包含少數API性質的ASHX.ASPX或MVC Action,提供其他系統呼叫整合. ...
- Android - Facebook KeyHash 設定
转自:http://www.dotblogs.com.tw/newmonkey48/archive/2014/04/17/144779.aspx App要使用Facebook 分享時,設要在Faceb ...
- 【转】第 02 天:在 Windows 平台必裝的三套 Git 工具
原文网址:https://github.com/doggy8088/Learn-Git-in-30-days/blob/master/docs/02%20%E5%9C%A8%20Windows%20% ...
- Yeoman+Bower+gulp web前端自动化工作流程(初级教程)
Yeoman包括了三个部分yo(脚手架工具).grunt/gulp(构建工具).bower(包管理器).听说gulp更容易上手,所以我就没用grunt而选的gulp 什么是开发流程? 在我看来一个完整 ...
- 在Github上搭建自己的博客(Windows平台)
折腾了好久,终于在Github上搭建了自己的博客.这里面总结一下过程希望对大家能有所帮助. Github建博优缺点 和 csdn,新浪,网易相比,在Github上可以自己实现功能 和阿里云,VPS相比 ...
- Sass安装(windows版)
Sass安装(windows版) 在 Windows 平台下安装 Ruby 需要先有 Ruby 安装包,大家可以到 Ruby 的官网(http://rubyinstaller.org/download ...
- JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (3):部署設定及應用 (转帖)
說明:這一篇主要是說明如何將程式部署到Application Server,以及程式如何運作,產生的檔案置於何處,以及如何以瀏覽器呈現(Applet),或是當成桌面應用程式,或是 桌面Applet,這 ...
随机推荐
- PHP对大文件的处理思路
需求: 现有一个1G左右的日志文件,大约有500多万行, 用php返回最后几行的内容. 在php中,对于文件的读取时,最快捷的方式莫过于使用一些诸如file.file_get_contents之类的函 ...
- java面试笔试谈
例一: public class Inc { public static void main(String[] args) { Inc inc=new Inc(); int i=5; inc.ferm ...
- Eclipse配置C/C++开发环境
开发环境:Eclipse3.2.CDT3.1.MinGW5.1 1.Eclipse及CDT的安装到Eclipse的官方网站http://www.eclipse.org上下载Eclipse.安装CDT. ...
- Autowired properities class
1. Properties类 @ConfigurationProperties(locations = "classpath:build.properties") @JsonInc ...
- Objective-C ,ios,iphone开发基础:快速实现一个简单的图片查看器
新建一个single view 工程: 关闭ARC , 在.xib视图文件上拖放一个UIImageView 两个UIButton ,一个UISlider ,布局如图. 并为他们连线, UIImage ...
- Python 基础【第四篇】参数
程序运行避免不了需要一些参数来支持 那么如何让程序接收参数呢?这里先简单的用sys模块的参数 sys.argv[]方法来实现参数获取 1.用法: import sys //导入sys模块后期会详细 ...
- Adobe Edge Animate –EdgeCommons Log和全局变量设置功能
Adobe Edge Animate –EdgeCommons Log和全局变量设置功能 版权声明: 本文版权属于 北京联友天下科技发展有限公司. 转载的时候请注明版权和原文地址. 一.Log功能 当 ...
- 设计包含min函数的栈
stack<pair<int, int>> sta; void push(int x) { int min_i; if(sta.empty()) { min_i = x; } ...
- hdu 4666 最大曼哈顿距离
思路:这题我是看了题目后,上百度搜了一下才知道还有求最大曼哈顿距离的方法.直接把代码copy过来,研读一下,知道了代码实现机制,自然就很容易想到用优先队列来维护每种状态下的xi,yi之和的最大值最小值 ...
- 实现TableLayout布局下循环取出TableRow控件中的文字内容到list集合
布局方式为TableLayout,利于实现表单样式展现. <!-- 详情内容区域 --> <ScrollView android:layout_above="@id/id_ ...