久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

LESS-Middleware:Node.js 和 LESS 的完美搭配

LESS 是一個編寫 CSS 的很好的方式 ,讓你可以使用變量,嵌套規則,混入以及其它許多有用的功能,它可以幫助您更好地組織你的 CSS 代碼。 最近我一直在研究 Node.js ,并想用 less-middl
       LESS 是一個編寫 CSS 的很好的方式 ,讓你可以使用變量,嵌套規則,混入以及其它許多有用的功能,它可以幫助您更好地組織你的 CSS 代碼。


  最近我一直在研究 Node.js ,并想用 less-middleware 中間件,這樣我可以很容易的在我的應用程序中使用 LESS 了。配置好以后,LESS-Middleware 能夠自動處理編譯你的 LESS 代碼為 CSS 代碼。


       如果你把 LESS 和 CSS 文件存儲在同一個目錄,配置很簡單,但我想用不同的路徑為我的源目錄和目標目錄,這個地方就有點問題了,所以在這里,我想我把發現的問題記錄下來。


  如果您指定一個不同的 "src" 和 "dest" 的目錄,您還必須提供 "prefix" 選項,它必須匹配跟在您的目標目錄中后面的目錄。下面是這個例子可以更好的讓你理解:


  1. var  lessMiddleware = require("less-middleware");



  2. app.use(lessMiddleware({

  3.     src: __dirname + "/less",

  4.     dest: __dirname + "/public/css",

  5.     prefix: "/css",

  6.     force: true

  7. }));

  8. app.use(express.static(__dirname + "/public"));
復制代碼


        在這個例子中,我把源目錄配置為我的應用程序的根目錄下的 "/less" 目錄,并讓 CSS 輸出到 "/public/css 目錄。此外,你還需要指定 "prefix" 屬性,以匹配跟在 "/public" 后面的目錄,即 "/css" 目錄。


  你還可以指定其它參數,上面指定了 force 參數,讓每次請求的時候重新編譯 LESS 文件,再結合自動刷新功能,這樣在開發的時候修改樣式代碼都可以有即時的效果。


  最后在頁面上引用 CSS 文件就和正常的一樣了:


復制代碼
        
       這邊文章發布的時候,less-middleware 已更新到到 1.0.3 版本,上面的配置是針對 0.1.x 的,下面給大家介紹如果從 0.1.x 遷移到 1.0.x。


  首先,也是重要的變化——源目錄參數的變化,之前是放在 options 參數里的,如下:


  1. lessMiddleware({

  2.   src: path.join(__dirname, '/public')

  3. })
復制代碼


       因為源目錄是必備參數,所以升級之后作為中間件的第一個參數,如下:


  1. lessMiddleware(path.join(__dirname, '/public'))
復制代碼


     第二個變化是中間件參數和 LESS 參數分離,這樣參數結構更清晰明了,如下:


  1. lessMiddleware(source, [{options}], [{parserOptions}], [{compilerOptions}])
復制代碼


        options 參數是提供給中間件使用的,而后面兩個參數對象不會影響中間件,是傳遞給 LESS 解析和編譯器的。


  在這個調整之后,對應參數定義方式也要相應的調整,下面是一些對應的修改:


compress: 從 options 移除,需要在 compilerOptions 中定義;
dumpLineNumbers: 從 options 移除,需要再 parserOptions 中定義;
optimization: 從 options 移除,需要再 parserOptions 中定義;
paths: 從 options 移除,需要再 parserOptions 中定義;
preprocessor: 已經被移動到 preprocessor.less 中進行定義;
relativeUrls: 從 options 移除,需要再 parserOptions 中定義;
sourceMap: 從 options 移除,需要在 compilerOptions 中定義;
yuicompress: 從 options 移除,需要在 compilerOptions 中定義;


  第三個變化是新增加了參數,同時移除了 prefix 和 treeFunctions 參數,讓你可以更靈活的進行配置,如下:


postprocess.css: 在被保存之前,修改 CSS 編譯輸出;
preprocess.less: 在 LESS 被解析和編譯前進行修改;
preprocess.path: 在被文件系統加載前,修改 LESS 路徑;


  有了這幾個參數,我們之前使用 prefix 實現的功能可以用下面的方式達到同樣的效果:


  1. preprocess: {

  2.   path: function(pathname, req) {

  3.     return pathname.replace(/^\/less\//, '/css');

  4.   }

  5. }
復制代碼


更詳細的信息,可以參考 less-middleware 官方文檔。


【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

由于實際運行環境是在瀏覽器中,因此性能還取決于JavaScript解釋器的效率,指定的FPS幀速在低性能解釋器中可能不會達到,所以這部分不是開發者能夠決定的,開發者能作的是盡可能通
本文將使用HTML5提供的VideoAPI做一個自定義的視頻播放器,需要用到HTML5提供的video標簽、以及HTML5提供的對JavascriptAPI的擴展。,HTML5中國,中國最大的HTML5中文門戶。
隨著 Hybrid 應用的豐富,HTML5 工程師們已經不滿足于把桌面端體驗簡單移植到移動端,他們覬覦移動原生應用人性化的操作體驗,特別是原生應用與生俱來的豐富的手勢系統。HTML5 沒有提
你想要在自己網站上分享一個產品,或者是一個作品集,又或者僅僅只是一個靈感。在你發布到網上之前,你想讓它看起來有吸引力,專業,或者至少得看起來像那么回事。那么你接下
H5廣告,包括H5廣告的設計流程,究竟有什么講究,和階段。為了能幫助更多的人了解H5廣告,我專門做了一個講義。同時,也讓我意外的收到了非常好反饋和認!這是對我的極大鼓勵!我的
本文主要內容有:框架與組件、構建生態、開發技巧與調試、html、css與重構、native/hybrid/桌面開發、前端/H5優化、全棧/全端開發、研究實驗、數據分析與監控、其它軟技能、前端技術網
主站蜘蛛池模板: 国产三级一区二区三区 | 99热视| 伊人网91 | 91在线成人 | 亚洲精品乱码久久久久久按摩观 | 99精品久久久久久中文字幕 | 欧美日韩高清在线一区 | 午夜精品在线观看 | 国产一区视频在线 | 综合久久综合久久 | 每日更新av | 久久久久久久久99精品 | 精品久久久久久国产 | 欧美一区二区二区 | 一区二区三区四区在线视频 | 午夜国产 | 国产成人久久精品一区二区三区 | 涩涩导航| 在线永久看片免费的视频 | 日韩视频精品在线 | 亚洲精品一区中文字幕乱码 | 国产成人精品一区二区三区四区 | 一级片毛片 | 中文字幕一区二区三区四区 | 久久久久www | 九一视频在线观看 | 免费av播放 | 中文在线视频 | 亚洲精品一区中文字幕乱码 | 51ⅴ精品国产91久久久久久 | 国产精品自拍视频网站 | 日韩精品在线网站 | 日韩一区二区三区在线 | 国产一二区视频 | 手机av免费在线 | 免费观看一级特黄欧美大片 | 国产91网站在线观看 | 国产成人免费 | 久久久久se | 最新免费av网站 | 日本久久久久久久久 |