Задать вопрос

Какую лучше использовать структуру vuejs с моделями?

Person.js:

class Person {
  constructor(name) {
    this.name = name;
  }

  sayName() {
    console.log('Person ${this.name} said his name');
  }
}
export default Person;


Далее в index.vue
я импортирую этот класс
import Person from "Person";
и использую

Правильный ли это подход? т.к в js файл Person.js будет считаться МОДУЛЕМ
Как лучше ?
Где можно почитать про использование моделей и vuejs например ?
  • Вопрос задан
  • 1614 просмотров
Подписаться 7 Средний Комментировать
Решения вопроса 1
uaKorona
@uaKorona
Front-End разработчик
В целом, Vue по своей идеалогии близок к ООП.
В своем проекте, я использую классы вместе с Vuex следующим образом:

Допустим, Вам приходит с сервера массив персон. Перед тем, как положить его в стейт (Vuex), я пробегаюсь по массиву и для каждой записи создаю инстанс класса Person.
И в тех местах, где я буду получать эти записи из стора (Vuex), я могу вызывать методы класса, тот же sayName из вашего примера.

Для меня такой подход чище, чем в сторе Персон объявлять геттер, или выносить в миксины такую функцию и потом подмешивать в нужные компоненты.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 5
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Официальный путь управления состоянием во vue.js это vuex.
А без хорошего понимания механизмов реактивности во vue.js самодельные решения доставят только боль.
Ответ написан
Комментировать
@GrigoriyGrigoriy
Посмотрите на это решение: https://github.com/FiguredLimited/vue-mc
Ответ написан
Комментировать
bro-dev
@bro-dev
Каждая модель, это модуль vuex, получается очень аккуратно.
Ответ написан
Комментировать
@mrFlyer
Вроде интересное решение на базе VUEX

https://github.com/vuex-orm/vuex-orm

Бегает в том числе и под Nuxt, в отличие от vue-mc.
Ответ написан
Комментировать
mQm
@mQm
https://medium.com/@gearmobile
Не совсем понятно, для чего Вам такой подход? Впервые такое вижу применительно к Vue.js, если честно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы