摘要:強大的插件讓我們在編寫的過程中獲得了極大的便利,比如,我們可以方便的使用語法來命名我們的組件。但是在以上的版本中,卻會導(dǎo)致編譯報錯這是由于源字符串解析成的抽象語法樹已經(jīng)廢棄了該方法參考一場由引發(fā)的血案。
postcss強大的插件讓我們在編寫css的過程中獲得了極大的便利,比如,我們可以方便的使用BEM語法來命名我們的組件。
我是Title
我是內(nèi)容
@component CompName { height: 200px; width: 200px; margin: auto; @descendent contain { font-size: 16px; font-weight: normal; color: #333; @when active { color: #ff5d23; } } }
/* 編譯后 */ .CompName { height: 200px; width: 200px; margin: auto; } .CompName-contain { font-size: 16px; font-weight: normal; color: #333; } .CompName-contain.is-active { color: #ff5d23; }
這種語法的使用只需我們引入postcss-bem這個插件就可以的。但是在webpack4以上的版本中,卻會導(dǎo)致編譯報錯:rule.moveTo is not a function
xx .moveTo is not a function
這是由于css源字符串解析成的抽象語法樹已經(jīng)廢棄了該方法(參考一場由postcss-bem引發(fā)的血案)。所以不再能夠使用moveto去操作抽象樹中的節(jié)點。所以使用append方法來代替即可解決該問題。
newComponent.append(rule); // rule.moveTo(newComponent);
為此,擼了一個npm包,可供后續(xù)開發(fā)人員調(diào)用。包地址:wlq-postcss-bem
由于第一次發(fā)布npm包,沒有經(jīng)驗,很不規(guī)范,歡迎大家指正。github地址:wlq-postcss-bem。
歡迎大家交流使用。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/99574.html
摘要:強大的插件讓我們在編寫的過程中獲得了極大的便利,比如,我們可以方便的使用語法來命名我們的組件。但是在以上的版本中,卻會導(dǎo)致編譯報錯這是由于源字符串解析成的抽象語法樹已經(jīng)廢棄了該方法參考一場由引發(fā)的血案。 postcss強大的插件讓我們在編寫css的過程中獲得了極大的便利,比如,我們可以方便的使用BEM語法來命名我們的組件。 我是Title 我是內(nèi)容 @compon...
摘要:本篇不包含所有坑,暫時只記錄自己踩到的部分坑一安裝安裝最新版本安裝新增依賴這個在中,本身和它的是在同一個包中,中將兩個分開管理。我記錄下自己更新這個的過程,以下前半部分可以直接跳過。以下記錄踩坑過程。 本篇不包含所有坑,暫時只記錄自己踩到的部分坑 一.安裝 安裝webpack4最新版本 npm install --save-dev webpack@4 安裝新增依賴 webpack-c...
摘要:函數(shù)描述表示定義一段代碼,并且可重復(fù)使用函數(shù)的定義函數(shù)聲明方式字面量表達方式函數(shù)聲明方式語法函數(shù)名稱小括號不可省去函數(shù)體函數(shù)聲明方式在定義函數(shù)時,函數(shù)體中的內(nèi)容不會被執(zhí)行啞吼吼調(diào)用函數(shù)使用函數(shù)名稱調(diào)用函數(shù)的時候會執(zhí)行函數(shù)體中的內(nèi)容字面量方 函數(shù) 描述 表示定義一段JavaScript代碼,并且可重復(fù)使用 函數(shù)的定義 函數(shù)聲明方式 字面量表達方式 函數(shù)聲明方式 語法 function...
閱讀 3162·2021-11-22 14:45
閱讀 3311·2019-08-29 13:11
閱讀 2312·2019-08-29 12:31
閱讀 931·2019-08-29 11:21
閱讀 2999·2019-08-29 11:09
閱讀 3626·2019-08-28 18:11
閱讀 1429·2019-08-26 13:58
閱讀 1282·2019-08-26 13:27