Ответы пользователя по тегу Vue.js
  • Когда не использовать vuex | redux | flux?

    @spbislanders
    Создаю свое веб приложение, девелопер
    если мы пользуемся vue или react, то у нас приложение – SPA, даже если пользователь его открывает в браузере.

    вы точно понимаете что такое spa? мне ничего не мешает юзать vue или react вне spa
    то, по сути, это будут разные экземпляры приложения, в каждом из которых будет свое состояние. Логично?

    логично, где вопрос?
    И все-таки вопрос: в каких случаях данные с сервера хранить в хранилище состояний (vuex|redux) нужно, а в каких – нет?

    а) данные нужно пробросить из одного компонента в другой, не имея при этом связанно цепочки, либо она слишком длинная, данные пробрасываются, чтобы обновить локал стор какого-то компонента
    б) хочу настроить серверный рендер шаблонов с какими-то динамическими данными(из БД). Там как раз и используется global store для этого
    Так вот вопрос: нужно ли в этом случае помещать их в хранилище и работать с ними через хранилище.

    5млн объектов из базы в глобал сторе? НЕТ
    первые 20-30 можно поместить, далее пробросить их компонентам страницы
    следующие 4.9млн загружать в локал стор, все.

    Меня смущает вот какой момент: пользователь же может одновременно открыть два компонента, которым нужна разные наборы данных с сервера, а у нас в хранилище только один, не лучше ли каждый раз, когда открывается очередная страница, в компоненте, который отображает список, запрашивать данные с сервера?

    не понял вопроса, кони-люди смешалось вообще все...
    2 компонента на странице. Каждому нужны данные с разных ресурсов?
    ну дак и загружайте их в локал сторы этих компонентов. Запрашивайте данные с сервера, в чем проблема?
    которым нужна разные наборы данных с сервера, а у нас в хранилище только один

    global store (vuex, redux) может хранить одновременно хоть сотню наборов
    И да читайте документацию по redux, там это все есть
    Ответ написан
  • Почему не всегда используют ssr?

    @spbislanders
    Создаю свое веб приложение, девелопер
    SEO, если это новостной сайт.
    Если это бизнес приложение то обычно делают лэндинг с ssr. А весь функционал без ssr, затраты выше и по времени дольше возиться и серверов несколько штук надо брать и библиотеки, они не все компилируются на сервере, обычно на гитхабе пишут SSR support есть или нет
    Ответ написан
    Комментировать
  • Как сделать задержку главного компонента App при загрузке данных пользователя?

    @spbislanders
    Создаю свое веб приложение, девелопер
    Если правильно понял вопрос https://stackoverflow.com/questions/48009624/vuejs...
    Ответ написан
    Комментировать
  • Переделать vue.js сайт с SPA модели на SSR?

    @spbislanders
    Создаю свое веб приложение, девелопер
    про vue ssr:
    webpack придется перелопатить(но это у меня так было и это был гемор)
    добавить пару файлов entry-server.js, entry-client.js
    пререндер на стороне сервера:
    1. https://github.com/vuejs/vue-hackernews-2.0/blob/m...
    рендер с клиентской стороны:
    2. https://github.com/vuejs/vue-hackernews-2.0/blob/m...
    просто указывать какие данные какому компоненту грузить
    3. https://github.com/vuejs/vue-hackernews-2.0/blob/m...
    надеятся что все либы в проекте совместимы с ssr
    Ответ написан
    Комментировать
  • Как объяснить бекенд-разработчику почему я не могу сделать то, что он хочет?

    @spbislanders
    Создаю свое веб приложение, девелопер
    стойте, что вы делаете? вы шлете на бэкэнд:
    - массив из строк, где names - query param и тип запроса GET, это ок
    - в query param: values который является объектом {"brand": "bmw"}, это что такое?
    вы конечно можете это сделать следующим образом:

    const url = '../../../json/v1/form/kasko/dependencies?values=' 
    const values = {
      "brand": val
    }
    
    axios.get(url + JSON.stringify(values))
      .then(response => {....})
      .catch(...);


    как сформировать в цикле строку ?names[]=models&names[]=oiltype я думаю сами догадаетесь, ее нужно будет тоже добавить к переменной url.

    если данные на создание новой строки в какой-то таблице уходят, то я бы лучше отправлял axios'ом на бэкэнд post запрос с data и content-type: application/json
    чтото вроде:

    data = {
       "names": [{
         "models": [{"brand" "bmw"}]
       }]
    }
    Ответ написан
    Комментировать