Encapsulation (کپسوله سازی) در انگولار
@component{
...
encapsulation: ViewEncapsulation.None
encapsulation: ViewEncapsulation.Native
encapsulation: ViewEncapsulation.Emulated
}
کپسوله سازی در انگولار چیست؟
در انگولار کپسوله سازی به معنای جداسازی فایلهای HTML, CSS و همچنین View کامپوننت موردنظر از سایر کامپوننتهاست.
ViewEncapsulation.None: در این حالت هیچگونه استایل و قالبی به صورت اختصاصی برای این کامپوننت درنظر گرفته نمیشود.
ViewEncapsulation.Native: در این حالت استایلها به صورت ذاتی از مرورگر شما گرفته میشوند و سایر استایلهایی که در فایل component.css نوشته خواهد شد در بستر استایلهای توکار مرورگر رخ میدهند.
ViewEncapsulation.Emulated: این حالت به صورت پیشفرض و خودکار فعال بوده و نیازی به نوشتن آن نیست. در این حالت استایلها و قالبها دقیقا از فایلهای component.css فراخوانی شده و سپس استایل توکار مرورگر را روی آنها لحاظ میکند. یعنی تقدم و اولویت با استایلهایی است که توسط شما نوشته میشوند.
بهترین حالت برای استفاده از این ساختار ViewEncapsulation.Emulated است که به صورت خودکار در تمام کامپوننتها فعال میباشد. زیرا در حال حاضر مرورگرهای بسیار کمی هستند که قالبیت native دارند.