2017-04-27 8 views
5

मैं एक ओपन सोर्स घटक के लिए शैलियों को ओवरराइड करना चाहता हूं, लेकिन मैं दृश्य encapsulation अक्षम करने के लिए एकमात्र तरीका एक घटक के सजावट पर है। निश्चित रूप से किसी तृतीय पक्ष मॉड्यूल का उपयोग करने का अर्थ है कि मैं इसके लिए स्रोत संपादित नहीं कर सकता। यह और कैसे किया जा सकता है?कोणीय 2/4 में किसी तृतीय पक्ष घटक में दृश्य encapsulation को आप कैसे अक्षम करते हैं?

संपादित

मैं/गहरी/शैलियों सुझाव के बारे में पता है। मैं जो करना चाहता हूं वह बूटस्ट्रैप 4 से स्टाइल के साथ किसी तृतीय पक्ष घटक में तालिका शैलियों को ओवरराइड करता है। कस्टम घटक में एक .table क्लास लागू होता है, लेकिन दृश्य encapsulation के साथ, यह बूस्ट्रैप 4 कक्षाओं द्वारा पहुंच योग्य नहीं है।

मैं सिर्फ यह जानना चाहता हूं कि कंबल को कोड को फोर्क किए बिना पूरी तरह से दृश्य encapsulation अक्षम करने का तरीका है और मेरे स्वयं के उपयोग के लिए घटक सजावटी संपत्ति मूल्य "encapsulation: ViewEncapsulation.None" जोड़ें।

उत्तर

4

आप नेस्टेड घटकों की सीएसएस शैली को ओवरराइड करने के लिए/गहरी/सीएसएस चयनकर्ता का उपयोग कर सकते हैं। उदाहरण के लिए, घटक तीसरे पक्ष के घटक का उपयोग करता है जो ".dropdown" वर्ग के साथ एक ड्रॉप डाउन बनाता है।

घटक एचटीएमएल:

<ss-multiselect-dropdown #multipleSelect 
        [settings]="settings" 
        [options]="options" 
        [(ngModel)]="selectedOptions" 
        (ngModelChange)="onSelectChange($event)"></ss-multiselect-dropdown> 

और यहाँ घटक है कि वर्ग ड्रॉप डाउन ओवरराइड की सीएसएस है।

/deep/ .dropdown { 
    display: inline-block; 
    width: 100%; 
} 
+0

हां। बहुत से उद्देश्यों के लिए अच्छा सुझाव, लेकिन मेरी स्थिति थोड़ा अलग है। मेरा संपादन देखें। –

+0

प्लेटफार्मब्रोसर डायनेमिक()। बूटस्ट्रैप मॉड्यूल (ऐप मॉड्यूल, {डिफ़ॉल्ट एन्कैप्यूलेशन: व्यूएन्कैप्यूलेशन .ऑन}); –

+0

अद्यतन:/गहरा/अब के रूप में बहिष्कृत है। तो शायद एक अलग समाधान की आवश्यकता है – pravin

संबंधित मुद्दे