日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

PostCSS自学笔记(二)【番外篇二】

發布時間:2023/12/10 CSS 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PostCSS自学笔记(二)【番外篇二】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圖解PostCSS的插件執行順序

文章其實是一系列的早就寫完了. 才發現忘了發在SegmentFault上面, 最早發布于https://gitee.com/janking/Inf...

這次我繼續研究PostCSS的插件的執行順序。

之前有研究過做過假設,在插件列表中,PostCSS的插件執行順序自上而下,一切看起來似乎是沒有任何問題的。

我也看過有關PostCSS解析器的相關文章,有以下一些收獲:

摘自:PostCSS 是個什么鬼東西?

當然這張圖并沒有對Plugin System進行解釋。

再有:

摘自:深入PostCSS Web設計

摘自:寫CSS的姿勢

這兩張圖則應該是說明了我之前的假設,插件中的執行順序自上而下

但是這些資料不明不白的,我決定進一步閱讀相關文章找出真相,不過研究過程中,我也依然深思這樣一個問題,也許我本不應該糾結這個,因為或許根本沒有意義?或者這個工作方式并非與PostCSS本身有關?

于是我又把之前收集的PostCSS的文章翻了一遍,我們再來一個個過一遍。

POSTCSS PLUGIN INSTALLATION EXAMPLE

先來看看一片來自smashingmagazine的這段POSTCSS PLUGIN INSTALLATION EXAMPLE

In the array, we can include the necessary require statements that return the plugins and that are then called immediately. If you would like to read more about this concept, look through “Functions as First-Class Citizens in JavaScript” by Ryan Christiani.

會不會跟這個有關呢,我先埋個伏筆。

PostCSS Quickstart Guide: Exploring Pluginsd

再來看看另一篇PostCSS Quickstart Guide: Exploring Pluginsd的Plugin Execution Sequence中這段

One of the main considerations you have to make when loading up the array of PostCSS plugins is the order in which you run them. You’ll have to pause and think through your list, determining if one plugin might need to run after another in order to do what you want it to.

鄙人譯:有一個非常重要的需要考慮的一點是,當你在加載PostCSS插件數組中順序就是你執行他們的順序。因此你有必要好好在這個插件列表這下功夫思考一下,來確定你想要的一個接一個的插件執行順序。

原文第一句話很復雜,所以英語不好的理解起來可能有些費勁,姑且可以分成以下幾段分別翻譯再合并One of the main considerations you have to make when loading up the array of PostCSS plugins is the order in which you run them.

然后這段原文后也有示例,大家可以自己看看加深理解和認識。并且也有一個小結論:

The load order for plugins is something that will change with each set of plugins, so you may find you just need to do a little experimentation sometimes to get everything working together nicely.

鄙人譯:你所設置的每個插件都會被加載的插件順序所影響,因此強烈建議你在某些情況下多做些測試來讓你的插件們運行的更加完美~

好了看到這里,其實答案大致已經揭曉,也許你覺得這不是很自然的從上而下么,為何作者要糾結這么久還寫了這么一篇長篇大論的文章。如果你還沒看過之前我為何糾結這個順序問題,可以看看:

  • PostCSS自學筆記(二)【插件篇】#CSSNANO
  • PostCSS自學筆記(二)【番外篇一】

結論

其實,關于順序的疑問我覺得差不多就此打住,也許其中的確有些奇怪的現象,但是這個基本不影響或者說沒有追究其根本的意義,或許真要打破沙鍋問到底就要發郵件給PostCSS作者了。而作為普通開發人員,也許沒有必要花太多精力去研究這個,我們知道PostCSS插件的順序一般來說是從上往下執行的,不要犯低級的順序錯誤(例如import寫在列表末尾),大部分場景都會得到我們想要的結果了

(突然想起來了,前面埋了個伏筆其實跟它沒啥關系,所以不多做文章了~不過作為課外閱讀,多了解下也是棒棒噠!)

其他

關于我個人的PostCSS一系列學習, 介紹及總結, 有興趣可以參閱:

  • PostCSS自學筆記(一)【安裝使用篇】
  • PostCSS自學筆記(二)【插件篇】
  • PostCSS自學筆記(二)【番外篇一】
  • PostCSS自學筆記(二)【番外篇二】
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的PostCSS自学笔记(二)【番外篇二】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。