vue中scoped的原理及慎用原因

作用功能:

實(shí)現(xiàn)組件的私有化翁都,不對(duì)全局造成樣式污染,表示當(dāng)前style屬性只屬于當(dāng)前模
塊雖然方便但是我們需要慎用透敌,因?yàn)楫?dāng)我們使用公共組件時(shí)會(huì)造成很多困難描扯,
增加難度定页,想知道造成那些難度,需要先從scoped實(shí)現(xiàn)原理了解


實(shí)現(xiàn)原理:

通過觀察DOM結(jié)構(gòu)可以發(fā)現(xiàn):vue通過在DOM結(jié)構(gòu)以及css樣式上加上唯一的標(biāo)記绽诚,保證唯一典徊,達(dá)到樣式私有化,不污染全局的作用恩够,如圖卒落,樣式屬性上也會(huì)多一個(gè)該字符,以保證唯一

屏幕快照 2018-03-09 上午10.08.08.png

可以看出加上scoped后的組件里的標(biāo)簽都會(huì)多一個(gè)data-v-469af010的屬性蜂桶,并且在css樣式部分可以看出
屏幕快照 2018-03-09 上午10.12.00.png

由此可知儡毕,添加scoped屬性的組件,為了達(dá)到不污染全局扑媚,做了如下處理:

  • 給HTML的DOM節(jié)點(diǎn)加一個(gè)不重復(fù)屬性data-v-469af010標(biāo)志唯一性
  • 在添加scoped屬性的組件的每個(gè)樣式選擇器后添加一個(gè)等同與“不重復(fù)屬性”相同的字段腰湾,實(shí)現(xiàn)類似于“作用域”的作用,不影響全局
  • 如果組件內(nèi)部還有組件钦购,只會(huì)給最外層的組件里的標(biāo)簽加上唯一屬性字段檐盟,不影響組件內(nèi)部引用的組件( 注意 )

慎用原因:

其實(shí)從原理已經(jīng)能夠了解到慎用原因,這里權(quán)當(dāng)總結(jié)

  1. 從原理可見押桃,之所以scoped可達(dá)到類似組件私有化、樣式設(shè)置“作用域”的效果导犹,其實(shí)只是在設(shè)置scoped屬性的組件上的所有標(biāo)簽添加一的data開頭的屬性唱凯,且在標(biāo)簽選擇器的結(jié)尾加上和屬性同樣的字段,起到唯一性的作用谎痢,但是這樣如果組件中也引用其他組建就會(huì)出現(xiàn)類似下面的問題:
    1. 父組件無scoped屬性磕昼,子組件帶有scoped,父組件是無法操作子組件的樣式的(原因在原理中可知)节猿,雖然我們可以在全局中通過該類標(biāo)簽的標(biāo)簽選擇器設(shè)置樣式票从,但會(huì)影響到其他組件
    2. 父組件有scoped屬性,子組件無滨嘱,父組件也無法設(shè)置子組件樣式峰鄙,因?yàn)楦附M件的所有標(biāo)簽都會(huì)帶有data-v-469af010唯一標(biāo)志,但子組件不會(huì)帶有這個(gè)唯一標(biāo)志屬性太雨,與1同理吟榴,雖然我們可以在全局中通過該類標(biāo)簽的標(biāo)簽選擇器設(shè)置樣式,但會(huì)影響到其他組件
    3. 父子組建都有囊扳,同理也無法設(shè)置樣式吩翻,更改起來增加代碼量

所以scoped雖然看似方便但是使用還需謹(jǐn)慎
(個(gè)人總結(jié)兜看,不足請(qǐng)指出)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市狭瞎,隨后出現(xiàn)的幾起案子细移,更是在濱河造成了極大的恐慌,老刑警劉巖熊锭,帶你破解...
    沈念sama閱讀 206,602評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件葫哗,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡球涛,警方通過查閱死者的電腦和手機(jī)劣针,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來亿扁,“玉大人捺典,你說我怎么就攤上這事〈幼#” “怎么了襟己?”我有些...
    開封第一講書人閱讀 152,878評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長牍陌。 經(jīng)常有香客問我擎浴,道長,這世上最難降的妖魔是什么毒涧? 我笑而不...
    開封第一講書人閱讀 55,306評(píng)論 1 279
  • 正文 為了忘掉前任贮预,我火速辦了婚禮,結(jié)果婚禮上契讲,老公的妹妹穿的比我還像新娘仿吞。我一直安慰自己,他們只是感情好捡偏,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,330評(píng)論 5 373
  • 文/花漫 我一把揭開白布唤冈。 她就那樣靜靜地躺著,像睡著了一般银伟。 火紅的嫁衣襯著肌膚如雪你虹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,071評(píng)論 1 285
  • 那天彤避,我揣著相機(jī)與錄音傅物,去河邊找鬼。 笑死忠藤,一個(gè)胖子當(dāng)著我的面吹牛挟伙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 38,382評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼尖阔,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼贮缅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起介却,我...
    開封第一講書人閱讀 37,006評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤谴供,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后齿坷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體桂肌,經(jīng)...
    沈念sama閱讀 43,512評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,965評(píng)論 2 325
  • 正文 我和宋清朗相戀三年永淌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了崎场。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,094評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡遂蛀,死狀恐怖谭跨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情李滴,我是刑警寧澤螃宙,帶...
    沈念sama閱讀 33,732評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站所坯,受9級(jí)特大地震影響谆扎,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜芹助,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,283評(píng)論 3 307
  • 文/蒙蒙 一堂湖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧周瞎,春花似錦苗缩、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽退盯。三九已至彼乌,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間渊迁,已是汗流浹背慰照。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留琉朽,地道東北人毒租。 一個(gè)月前我還...
    沈念sama閱讀 45,536評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像箱叁,于是被迫代替她去往敵國和親墅垮。 傳聞我的和親對(duì)象是個(gè)殘疾皇子惕医,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,828評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 本文發(fā)布在我的博客vue中慎用style的scoped屬性許可協(xié)議: 署名-非商業(yè)性使用-禁止演繹4.0國際 ...
    2ue閱讀 9,052評(píng)論 2 7
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)算色,斷路器抬伺,智...
    卡卡羅2017閱讀 134,599評(píng)論 18 139
  • HTML標(biāo)簽解釋大全 一、HTML標(biāo)記 標(biāo)簽:!DOCTYPE 說明:指定了 HTML 文檔遵循的文檔類型定義(D...
    米塔塔閱讀 3,225評(píng)論 1 41
  • 無盡的黑 無盡的寒冷 無盡的水 到不了的彼岸 卻是你的舞臺(tái) 黑夜終將落幕 當(dāng)明月初升之時(shí) 你便在黑夜中高歌舞蹈 昨...
    雪鯨呀閱讀 1,124評(píng)論 7 13
  • 之所以領(lǐng)悟而不醒悟甚至執(zhí)迷不悟灾梦,該是緣于人的骨子里總有一種頑疾峡钓,偏執(zhí)的不肯痊愈,也或者于這個(gè)充滿無限變數(shù)的人間偶爾...
    云淡風(fēng)輕_f3b4閱讀 294評(píng)論 2 5