Мне понадобился фильтр, который выделял бы некоторые слова в тексте.
Я сделал так:
Vue.filter('highlight', function(value, data){
data.forEach(function(el, i, ar){
value.replace(el, '<b>' + el + '</b>')
})
return value
});
В компоненте вызываю:
<p>{{ text | highlight(arData) }} </p>
//
<script>
export default{
data(){
return{
text: 'тут некоторый текст',
arData: ['тут', 'текст']
}
}
}
</script>
Получаю ошибку
TypeError: value is undefined.
То есть, в калбэк фильтра не передается первый аргумент. Что я делаю не так? Разве он не должен подставляться туда автоматически?