짧은 버전 :Vue.js : 동적으로 생성 된 HTML에 범위가 지정된 CSS를 사용하려면 어떻게해야합니까?
내가 구성 요소의 방법에 HTML 문자열을 생성하고있어, 그것은 범위 지정에 대한 데이터 속성이 누락 있기 때문에 나는 범위 CSS와 HTML이 스타일을하는 방법을 알아낼 수 없습니다.
약간 더 긴 버전 :
나는 문자열을 받아하는 <span class="match">
에 의해 포위하는 의미 강조 검색어의 모든 항목과 HTML 문자열을 반환 하이라이트라는 함수가 있습니다. 그러나이 문자열을 수동으로 처리하기 때문에 스팬은 내 Vue 구성 요소의 범위가 지정된 CSS가 작동해야하는 특수 데이터 특성을 얻지 못하므로이 스타일을 스타일 화하는 유일한 방법은 내 CSS를 만드는 것입니다 범위를 지정하지 않아도되고 싶지 않습니다. 이 작업을 수행하는 데 Vue 전용 방법이 더 있습니까? 기능은 다음과 같습니다
// 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 그냥 탈출해야 할 일을 탈출하는 기능입니다)!