Ответы пользователя по тегу Vue.js
  • Форма на vue. Как правильно?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    Можно так:
    submitForm() {
       const { name, email, caps } = this;
       axios.post('//jsonplaceholder.typicode.com/posts', {
         name,
         email,
         caps,
       })
    }
    Ответ написан
    Комментировать
  • Vue.js + phaser.js как браузерный клиент для онлайн игры?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    Phaser судя по описанию игры вам лучше не брать там много лишнего, возьмите только PixiJS который используется для отрисовки. Соответственно интерфейс игры, чат, менюшки и т.д. можно пилить на vue.js, а сам игроковой процесс будет отрисован в canvas на webgl. Вот тут есть пример как юзать PixiJS в Vue.

    P.S. Сам начинал переписывать игру с flash на Vue + PixiJS, но пока времени не хватает, но в целом серьезных проблем не возникало.
    Ответ написан
    1 комментарий
  • Как с помощью axios отлавливать ошибки в одном месте и потом редиректить пользователя или показывать модалку в зависимости от ошибки?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    В принципе подход верный, сам пользуюсь таким, правда с показом модальников не сталкивался, у меня просто настроен редирект. Вам необходимо подключить роутер через import, так как через this тут к нему достучаться не получится.
    В файле router.js
    const LoginView = () => import('@/views/Login');
    const router = new Router({
      base: '/',
      mode: 'history',
      routes: [
        {
          path: '/login',
          name: 'login',
          component: LoginView,
        }
      ],
    });
    export default router;

    В файле с конфигом axios
    import axios from 'axios';
    import router from '../router';
    const instance = axios.create({ baseURL });
    
    instance.interceptors.response.use(undefined, (error) => {
      if (error.response && error.response.status === 401) {
        router.replace({
          path: '/login',
          query: { redirect: router.currentRoute.fullPath },
        });
      }
      return Promise.reject(error.response.data);
    });


    P.S. Можно редирект сделать с нужными props и тогда вы сможете показать модальник, если нужный пропс выставлен.
    Ответ написан
    1 комментарий
  • Как реализовать deploy на vuejs?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    Делайте через process.env
    Пример:
    const URL = process.env.NODE_ENV === 'development' ? 'localhost' : 'test.ru';

    Ну и соответственно при запуске через dev в переменной будет localhost, а если собрать через build ваш домен. Потом в коде используйте переменную как и где хотите.
    Ответ написан
    2 комментария
  • Как организовать рабочее место оффлайн для работы с webpack и vue-cli?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    Добрый день. На машине на которой будете работать оффлайн нужно установить node.js версии выше 4.
    Далее на машине где у вас есть доступ к инету и так же стоит node.js делаем так
    1. npm install -g vue-cli
    2. vue init webpack
    3. npm i
    4. Запускаем npm run dev (проверяем, что все работает)
    4.1 По желанию сразу доустанавливаем необходимые библиотеки axios, vuex, vuetify and etc.
    5. Упаковываем всё в архив включая node_modules
    6. Распаковываем архив на машине без инета и выполняем npm run dev (проверяем, что всё работает)

    Если надо всё это выложить в git, делаем обратную операцию, забирая на машину с инетом изменившиеся файлы (исключая node_modules) и например публикуем в github. Если речь идет про публикацию проекта на хостинге, то выполняем npm run build и забираем файлы из папки dist и заливаем их потом на хостинг.

    P.S. Хочу заметить, что желательно не делать переноса Windows - Linux и наоборот, так как если вы выбрали использование sass например, то бинарники будут разлечаться и npm поставить под нужную систему и ничего не заработает.
    Ответ написан
    1 комментарий
  • Vue.js, rest api и роутеринг?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    Ответ написан
    Комментировать
  • Почему не видит данные в компоненте vue.js?

    FFxSquall
    @FFxSquall
    Могу писать код, могу не писать
    Нельзя размещать text/x-template внутри рутового элемента (к которому вы привязываете инстанс). Вот так правильно.
    Ответ написан
    Комментировать