Это более общий вопрос о том, какая рекомендуемая структура или шаблон могут быть в структуре FE.В настоящее время создается приложение, цель которого - использовать как можно больше общих компонентов.У меня есть searchTerms
компонент, который получает «условия» от API.Проблема, с которой мы столкнулись, заключалась в том, что на самом деле API имеет разные маршруты в разных местах, где мы используем компонент.Моей первоначальной мыслью было дать компоненту prop
из :section
где будет известно о разделе, а затем применить правильный маршрут API.Другим вариантом, о котором мне сказали, было создание apiFacade
(по-видимому, это шаблон, используемый в C #), который я сделал, и в этом случае я смог создать экземпляр фасада, не зная компонента, где он используется, например:
//parent component
<searchterms :type="type" :apiFacade="apiFacade" :mode="mode" @loading="loaderDisplay"></searchterms>
data(){
return {
apiFacade: new SearchTermsApiFacade(this.$api),
...
//child component
export default {
name: "searchterms",
props: {
type: String,
apiFacade: Object,
},
...
try {
await this.apiFacade.createSearchTerm(payload);
Мне интересно, что считается "лучшей" практикой.Лично я подумал, что пропускать реквизит проще и иметь условную логику в совместно используемом компоненте хорошо, но, может быть, я что-то упустил?