Я написал простой компонент подстановки шаблонов в VueJS как однофайловый компонент.У него не так много функций: только одна подпорка, и я также создал вычисляемое свойство для инкапсуляции некоторых хитрых преобразований, которые выполняются с этой подпоркой, прежде чем ее можно будет использовать в шаблоне.Это выглядит примерно так:
<template>
...some-html-here...
<a :href="myHref">...</a>
...
</template>
<script>
export default {
name: 'MyComponent',
props: {
href: { type: String, required: true },
},
computed: {
myHref() {
let result = this.href;
// several lines of complicated logic making substitutions and stuff
// ...
return result;
}
}
};
</script>
Теперь я думаю, что это действительно должен быть функциональный компонент, так как у него нет состояния, нет данных, нет реактивности, и поэтому разбрасывание целого экземпляра расточительно.
Я могу сделать это функциональным, просто добавив атрибут «функциональный» в мой <template>
.В функциональном компоненте, конечно, нет таких вещей, как вычисляемые свойства или методы или что-то еще.Итак, мой вопрос: где я могу поместить несколько строк сложной логики?Я не хочу вставлять это непосредственно в мой шаблон, тем более что он используется в нескольких местах.Так, где я могу поместить код, чтобы преобразовать мои входные реквизиты и подготовить их к использованию в моем шаблоне?