最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解angular2 控制視圖的封裝模式

 更新時間:2018年12月27日 11:32:33   作者:Twait  
這篇文章主要介紹了詳解angular2 控制視圖的封裝模式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

為什么我想要分享控制視圖的封裝模式呢?主要是我們angular的項目大多數(shù)都會去引入一個UI組件,但往往因為需求和關(guān)系我們會去修改UI組件的樣式。這時,因為有些人不是很了解View encapsulation里面的屬性,往往會直接在全局的style.js里面添加全局樣式,等項目越來越大,就會出現(xiàn)一些不知名的bug和維護起來變得困難。如果你運用好視圖的封裝模式,會幫你解決好很多的問題。

一般來說組件的 CSS 樣式被封裝進了自己的視圖中,而不會影響到應(yīng)用程序的其它部分。通過在組件的元數(shù)據(jù)上設(shè)置視圖封裝模式,你可以分別控制每個組件的封裝模式。Angular2有三種樣式封裝模式:

  • ViewEncapsulation.Native - 使用原生的Shadow Dom。
  • ViewEncapsulation.Emulated - angular2的默認值,通過預(yù)處理(并改名)CSS 代碼來模擬 Shadow DOM 的行為,在標簽上增加標識,來固定樣式的作用域,以達到把 CSS 樣式局限在組件視圖中的目的。
  • ViewEncapsulation.None - 沒有Shadow Dom,樣式?jīng)]有封裝, Angular 會把 CSS 添加到全局樣式中。而不會應(yīng)用上前面討論過的那些作用域規(guī)則、隔離和保護等。 從本質(zhì)上來說,這跟把組件的樣式直接放進 HTML 是一樣的。

在 ViewEncapsulation.Emulated下 的 Angular 應(yīng)用的 DOM 樹中,每個 DOM 元素都被加上了一些額外的屬性。

<hero-details _nghost-pmm-5>
 <h2 _ngcontent-pmm-5>Mister Fantastic</h2>
 <hero-team _ngcontent-pmm-5 _nghost-pmm-6>
  <h3 _ngcontent-pmm-6>Team</h3>
 </hero-team>
</hero-detail>

生成出的屬性分為兩種:

1、一個元素在原生封裝方式下可能是 Shadow DOM 的宿主,在這里被自動添加上一個 _nghost 屬性。 這是組件宿主元素的典型情況。

2、組件視圖中的每一個元素,都有一個 _ngcontent 屬性,它會標記出該元素是哪個宿主的模擬 Shadow DOM。
用法如下:

import { Component, OnInit, ViewEncapsulation } from '@angular/core';
@Component({
  selector: 'app-factor_analysi',
  templateUrl: './factor_analysis.component.html',
  styleUrls: ['./factor_analysis.component.scss'],
  providers: [factor_analysis_api],
  encapsulation: ViewEncapsulation.None
})

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用AngularJS處理單選框和復(fù)選框的簡單方法

    使用AngularJS處理單選框和復(fù)選框的簡單方法

    這篇文章主要介紹了使用AngularJS處理單選框和復(fù)選框的方法,在AngularJS表單的基礎(chǔ)之上編寫起來非常簡單,需要的朋友可以參考下
    2015-06-06
  • 實例詳解AngularJS實現(xiàn)無限級聯(lián)動菜單

    實例詳解AngularJS實現(xiàn)無限級聯(lián)動菜單

    這篇文章主要介紹了實例詳解AngularJS實現(xiàn)無限級聯(lián)動菜單的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • AngularJS通過$sce輸出html的方法

    AngularJS通過$sce輸出html的方法

    不知道大家有沒有發(fā)現(xiàn)在用AngularJS作為前端搭建個人博客的時候,發(fā)現(xiàn)用AngularJs輸出html的時候,瀏覽器并不解析這些html標簽,這里我們需要其顯示angular輸出的html能被瀏覽器解析怎么辦呢?不知道Angularjs如何實現(xiàn)這種功能的通過這篇文章來看看吧。
    2016-09-09
  • 使用Angular CDK實現(xiàn)一個Service彈出Toast組件功能

    使用Angular CDK實現(xiàn)一個Service彈出Toast組件功能

    本文主要寫用cdk實現(xiàn)一個簡單的Toast組件,使用的是cdk中的overlay模塊,需要手動安裝環(huán)境,具體安裝方法及相關(guān)實現(xiàn)代碼跟隨小編一起看看吧
    2021-07-07
  • Angular.js中angular-ui-router的簡單實踐

    Angular.js中angular-ui-router的簡單實踐

    本篇文章主要介紹了Angular.js中angular-ui-router的簡單實踐,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • 詳解Angular Karma測試的持續(xù)集成實踐

    詳解Angular Karma測試的持續(xù)集成實踐

    這篇文章主要介紹了詳解Angular Karma測試的持續(xù)集成實踐,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • AngularJS入門教程之鏈接與圖片模板詳解

    AngularJS入門教程之鏈接與圖片模板詳解

    本文主要介紹 AngularJS 鏈接與圖片模板的知識,這里整理了相關(guān)資料及示例代碼,有興趣的小伙伴可以參考下
    2016-08-08
  • Angularjs過濾器使用詳解

    Angularjs過濾器使用詳解

    AngularJS提供了過濾器來對輸入輸出數(shù)據(jù)格式化。這篇文章主要介紹了Angularjs過濾器使用的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • angularJS開發(fā)注意事項

    angularJS開發(fā)注意事項

    本篇文章給大家分享了angularJS開發(fā)注意事項以及相關(guān)知識點,對此有興趣的朋友參考學(xué)習(xí)下。
    2018-05-05
  • Angular中懶加載模塊初始化技術(shù)實例解析

    Angular中懶加載模塊初始化技術(shù)實例解析

    這篇文章主要為大家介紹了Angular中懶加載模塊初始化技術(shù)實例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10

最新評論

井陉县| 新昌县| 莒南县| 孙吴县| 台南县| 肇庆市| 扶风县| 鹤壁市| 扬州市| 连州市| 苍南县| 班戈县| 三河市| 道孚县| 新巴尔虎右旗| 博野县| 桑日县| 集贤县| 波密县| 长岭县| 新沂市| 汕头市| 黔西| 丽水市| 榆社县| 营山县| 鹿泉市| 泽普县| 西乌珠穆沁旗| 神木县| 乌海市| 赞皇县| 湟源县| 随州市| 桦甸市| 孝昌县| 长宁区| 德江县| 沐川县| 香格里拉县| 临猗县|