1. 程式人生 > >Nodejs,Grunt配置sass自動編譯成css

Nodejs,Grunt配置sass自動編譯成css

Nodejs是服務端的,用於併發處理事件。

Grunt是應用程式構建,任務管理工具,能夠自動化地許多繁瑣的工作。

sass是css語言的一種拓展,用於更高效更規範寫出css。

環境:node與ruby

grunt的使用需要安裝grunt與nodejs環境,而sass的使用需要安裝sass和ruby環境。

現在安裝好node.js後,可在cmd中輸入node -v檢視是否安裝成功,若成功則會顯示版本號。

安裝好後,在cmd中輸入npm update -g npm,該命令執行後將會把npm配置到系統路徑中。可用npm -v來檢視是否成功

接著輸入 npm install -g grunt-cli(cli是command line interface),將grunt命令配置到系統路徑中。

之後再專案的根目錄下建立好package.json和Gruntfile.js兩個檔案

package.json:該檔案用來儲存一下專案相關的資訊,以及grunt的使用所需要以來的庫。

Gruntfile.js:該檔案是用來配置和定義任務的,這些任務中的一部分依賴於package.json中grunt外掛。

由於本文章主要講述的是sass的自動編譯的實現,故package.json和Gruntfile.js也是以此為例的。(在配置好這兩檔案後使用npm install,便可在專案中安裝相應的外掛)

此為package.json的內容:
{
  "name": "gruntSass",
  "version"
: "0.0.1", "devDependencies": { "grunt": "0.4.5", "grunt-contrib-watch": "*", "grunt-contrib-sass": "*" } } 在cmd中使用 npm install <模組名> --save-dev便可在其依賴庫中加入相應的模組了。 此為Gruntfile.js的內容:
module.exports = function(grunt) {

    // Project configuration.
grunt.initConfig({

        //Read the package.json (optional)
pkg: grunt.file.readJSON('package.json'), // Metadata. meta: { basePath: '../', srcPath: '../assets/sass/', deployPath: '../assets/css/' }, banner: '/*! <%= pkg.name %> - v<%= pkg.version %> - ' + '<%= grunt.template.today("yyyy-mm-dd") %>\n' + '* Copyright (c) <%= grunt.template.today("yyyy") %> ', // Task configuration. sass: { dist: { files: { '<%= meta.deployPath %>style.css': '<%= meta.srcPath %>style.scss' }, options: { // Target options style: 'expanded' } } }, watch: { scripts: { files: [ '<%= meta.srcPath %>/**/*.scss' ], tasks: ['sass'] } } }); // These plugins provide necessary tasks. grunt.loadNpmTasks('grunt-contrib-sass'); grunt.loadNpmTasks('grunt-contrib-watch'); // Default task. grunt.registerTask('default', ['sass']); };

Gruntfile.js是實現grunt工具的核心,這檔案中包括了所有配置和索要執行的任務。

想要弄明白Gruntfile.js檔案中的程式碼,我就要從頭開始重新構建它:

module.exports = function(grunt){

      grunt.initConfig({

            pkg:grunt.file.readJSON('package.json')

   });

};

上述程式碼啟動了配置的初始化函式,把package.json中的設定放到了快取中,這樣就可以在Gruntfile.js檔案中的其他位置引用這些值了

接著是配置一個合併程式中指令碼的任務:

module.exports = function(grunt){

    grunt.initConfig({

        pkg:grunt.file.readJSON('package.json'),

        concat:{

            options:{
                separetor:';'
            },
            dist:{
                src:['src/**/*.js'],
                dest:'dist/<%= pkg.name %>.js'
            }

        }

    });

};

這段程式碼是讓Grunt從src/目錄中拉出。js檔案,把他們合併後用在package.json中定義的名字保存於dist/目錄下。

sass: {
            dist: {
                files: {
                    '<%= meta.deployPath %>style.css': '<%= meta.srcPath %>style.scss'
},
                options: {                       // Target options
style: 'expanded'
}
            }
        }
這程式碼是將srcPath: '../assets/sass/'下的style。scss檔案轉譯成css保存於deployPath: '../assets/css/'目錄下的,style:expended是表示轉譯輸出檔案的程式碼格式。

相關推薦

NodejsGrunt配置sass自動編譯css

Nodejs是服務端的,用於併發處理事件。 Grunt是應用程式構建,任務管理工具,能夠自動化地許多繁瑣的工作。 sass是css語言的一種拓展,用於更高效更規範寫出css。 環境:node與ruby grunt的使用需要安裝grunt與nodejs環境,而sass的使用需

less在hbuilder自動編譯css

log -1 cnblogs mage 編譯器 1-1 分享 logs css hbuilder 打開工具欄->預編譯器設置 選擇.less,點擊編輯按鈕 編輯命令地址(就是含有lessc.cmd的文件夾) less在hbuilder自動編譯成css

使用gulp將sass檔案編譯css樣式

一、安裝gulp+sass(簡單方便) https://www.gulpjs.com.cn/docs/getting-started/ 1.全域性安裝:npm install --global gulp 2.作為專案的開發依賴安裝:npm install --s

HBuilder配置Less或者Sass自動編譯

關於Less\Sass或者其他CSS預處理語言的講解,這裡都沒有! 這裡主要講的是HBulider裡面怎樣開啟Less自動編譯功能,實現我們編寫less的時候,自動生成對應的css而不用每次都手動編譯一次,實現自動化。 首先,你的電腦裡面必須有less編譯環

webstorm下的sass自動編譯和移動端自適應實踐

info www .html ted 嘗試 ini 移動 工作文件夾 data http://www.fawwheel.com/shahramLu/p/6477731.html webstorm下的sass自動編譯和移動端自適應實踐 1、安裝Ruby 2、安裝s

webstorm 設定 sass自動編譯問題

  sass語法、使用它帶來的好處,就不再這裡做介紹了,主要看怎麼在webstorm裡配置自動編譯。   sass編譯是需要Ruby環境的,可以到這裡去下載  :  https://rubyinstaller.org/downloads/     ,安裝時選

vscode的gulp-less自動把less編譯css

4、這裡注意路徑,根目錄最好是“爸爸”級別,避免後面執行任務的時候忽略了路徑報錯;注意gulpfiles.js檔名字不能改,必須這樣寫,主要是拿來引用gulp的任務以及執行任務(怎樣執行任務,我在其他文章中總結了二種方法,供參考https://blog.csdn.net/weixin_36706903/art

less,webstorm 自動編譯輸出css配置

使用webstorm自動編譯less檔案,省去了cmd的功夫。但是網上關於設定less目標css檔案的位置的設定比較少,我找了一段時間才找到,原作者寫的比較透徹了,我就不搬了,直接複製連結。感謝原作者。 希望新人能更方便的找到答案。 http://wrox.cn/art

關於Sublime text 3如何編輯less並轉(編譯)css檔案親測可用

今天開始學習使用less這個強大方便的前端工具,本來是考慮用koala(專門編輯less的軟體)來使用less的,但是發現sublime編輯器也可以實現對less的編譯及高亮顯示程式碼,這樣既能少用一個軟體還能擴充套件sublime的功能,何樂而不為,於是趕緊去網上查了資料

webstrom配置less自動編譯

一、安裝nodejs; 二、使用npm安裝less;(自行百度) 三、less在webstrom中的配置: 這是我自己的配置: Program: C:\Develop\nvm\npm\lessc.cmd 要引用nodejs目錄下中的npm

springboot專案上有個紅叉且ecplise沒有自動編譯專案執行提示“錯誤: 找不到或無法載入主類”

近期在做springboot專案,發現springboot專案上有個紅叉但找不到哪個類報錯,ecplise沒有把專案自動編譯,執行還提示“錯誤: 找不到或無法載入主類”,進入工作空間“專案\target\classes”,發現專案java類根本沒有編譯,嘗試各種方式發現均

webstorm設定sass自動編譯

ruby -v gem -v 安裝sass 在命令列輸入: gem install sass 安裝成功後,在D:\Ruby23-x64\bin裡面會有scss.bat的檔案

sublime安裝less2css後 編譯css時報錯找不到指定檔案

很多人使用sublime安裝less2css後以為成功了 直接使用時結果會報這麼一個錯誤 這個呢 翻了翻度娘結果發現是因為沒有安裝lessc 所以才會報錯 然後我找到了簡潔得辦法。 node+npm 全域性安裝 less 就可以輕鬆解決問題啦 1.首先win+r 執行視窗 2.

在webstorm中配置sass自動編譯並且可以指定編譯後的css的目錄

本位藉助UndefinedCheng大神,本人只是搬運工,為了方便以後快速檢視 本文前提是電腦裡已經順利安裝了ruby,sass等之後,再進行webstorm中配置sass的watcher,以及改變watcher中的預設選項;如果以上都還沒有做,可以自行百度解決,

CentOS7 編譯安裝nodejs配置環境變量記錄

ever lis detail 遇到 ++ help 設置 代碼 contains 每次都裝,每次都查 阿裏雲備案了一個域名,續費了好多年,但是沒錢買服務器,就掛在github上。今天收到消息:域名解析服務器不在阿裏雲,要被GG。只能咬牙買了個阿裏雲乞丐版。 所有服務都裝

webstorm自動編譯sass配置

1. 首先下載Ruby   點選下載   (寫這篇文章的時候,安裝的是 Ruby + Devkit 2.4.X ,根據個人情況選擇64位或者32位) 2. 使用Ruby安裝Sass: gem install sass 3. webstor

hotcss.js如何利用sass自動生成css快速讓px轉換rem

hotcss配合flexable佈局,可以讓移動端佈局開發更容易。 根據ui設定的字型px不用通過計算自動轉換成rem,遵循視覺一致性原則。在不同大小的螢幕和不同的裝置畫素密度下,讓你的頁面看起來

Win10安裝Mongodb配置服務

append 配置文件 log 模式 日誌文件 文件夾 sta fig clas 好吧,今天突然發現新買的surface上沒有安裝mongodb,然後想著安裝一下,順便記錄一下,雖說安裝過程很簡單 一:下載安裝,然後拷貝到C盤根目錄,這個就不多說了,比QQ都簡單。 二:把b

vscode--搭建自動編譯sass環境

logs mod mil 樣式 name alt pil 項目 自動安裝 一,安裝插件及使用步驟 1、vscode安裝Live Sass Compiler,由於該插件依賴Live Server ,所以會自動安裝Live Server 2、點擊vscode底部的Watch

Pycharm WebStorm 配置 babel 實現自動編譯 ECMAScript6 (es6) 文件

pycharm webstorm 配置 所需基礎node.jsnmp開始1、首先新建一個空項目,減少幹擾更快的看到配置效果。2、在項目中創建一個 man.js 文件 。進入設置:「 File Settings Languages&Frameworks JavaScript 」將 Ja