Так что я считаю, что название вводит мой вопрос.Учитывая, что вы вводите новую зависимость в каждом компоненте, в котором вы хотите использовать mapGetters, это добавляет раздувание к вашему пакету.
Это также означает, что ваш компонент теперь специально привязан к Vue, что еще одна вещь, с которой нужно бороться, если вы перенесете компоненты на другую инфраструктуру, такую как React.
Рассмотрим эти 2 списка вычисленных свойств:
import { mapGetters} from 'vuex'
computed: {
...mapGetters({
active:'interface/active',
mode:'interface/mode',
views:'interface/views',
}),
}
против
computed: {
active:() { return this.$store.getters['interface/active'],
mode:{ return this.$store.getters['interface/mode']},
views:{ return this.$store.getters['interface/views']},
}
Конечно, последний немного более многословен, но ничего слишком плохого.Вы по-прежнему получаете все свои данные геттера одинаково в любом сценарии.Быть таковым кажется совершенно ненужным пухом для небольшого преимущества сохранения нескольких символов.
Первый пример весит 207B (201 символ)
, в то время как последний пример весит 207B (201 знак).
Для меня это означает с точки зрения типасбережений практически нетОднако я признаю, что первое более читабельно, портативно и, в конечном счете, проще в обслуживании, поскольку ваши релевантные данные находятся в одном месте.