लघु संस्करण:Vue.js: मैं गतिशील रूप से बनाए गए HTML उपयोग स्कोप्ड सीएसएस कैसे बना सकता हूं?
मैं एक घटक की विधि में HTML के साथ एक स्ट्रिंग पैदा कर रहा हूँ, और मैं समझ नहीं scoped सीएसएस के साथ कि HTML शैली में है, क्योंकि यह तय करने के लिए डेटा विशेषता अनुपलब्ध है।
थोड़ा लंबा संस्करण:
मैं एक समारोह के मुख्य आकर्षण कहा जाता है जो एक स्ट्रिंग लेता है और एक खोज पद की सभी घटनाओं हाइलाइट, एक <span class="match">
से घिरा हुआ अर्थ के साथ एक HTML स्ट्रिंग रिटर्न दिया है। हालांकि, चूंकि मैं इसे मैन्युअल रूप से एक स्ट्रिंग में कर रहा हूं, उस अवधि को विशेष डेटा विशेषता नहीं मिलती है कि मेरे व्यू घटक में स्कॉप्ड सीएसएस को काम करने की ज़रूरत है, इसलिए मेरे लिए उन मैचों को स्टाइल करने का एकमात्र तरीका है मेरा सीएसएस बनाना scoped नहीं है, जो मैं नहीं करना चाहता। क्या ऐसा करने के लिए मेरे लिए एक और अधिक विशिष्ट तरीका है? समारोह इस तरह दिखता है:
// Source: http://stackoverflow.com/a/280805/2874789
function highlight(data, search) {
return data.replace(
new RegExp("(" + preg_quote(search) + ")", 'gi'),
"<span class=match>$1</span>"
);
}
धन्यवाद (preg_quote सिर्फ एक समारोह है कि चीजों की आवश्यकता है कि बच गए होने के लिए निकल जाता है)!