WapSter, Интересный подход...нужно будет попробовать! Или запустить таймер, например 10 секунд, если токен не обновился, отправить на логин... Kovalsky, Не решит - т.к. пробовал и куки, и localStorage - при открытии браузера, он восстанавливает вкладки, и успевает отправить запрос до того, как localStorage изменится... У меня комп не слабый, на 7-8 вкладках такое произошло, на слабом компе с 4 вкладки уже...
Просто при старте компонента вызывается метод
created() {
this.initData();
},
который вызывает другой метод
initData() {
this.getOffers();
this.getPublishers();
},
getOffers() делает запрос axios, но он не может быть выполнен, т.к. нет токена, в итоге валится похоже все...
Вот собственно вопрос, а как переопределить этот метод, чтобы в тесте он не делал ajax запрос, а я сразу ему отдавал данные, которые он должен вернуть...
console.error
[vue-test-utils]: overwriting methods via the `methods` property is deprecated and will be removed in the next major version. There is no clear migration path for the `methods` property - Vue does not support arbitrarily replacement of methods, nor should VTU. To stub a complex method extract it from the component and test it in isolation. Otherwise, the suggestion is to rethink those tests.
Я пытался axios запрос вынести в actions VUEX но и там пристал тест, что не знает, что такое .then...
Т.е. переопределить метод, чтобы он возвращал для теста готовые данные...
Так сработало, но пишет, что в будущем это будет deprecated и так нехорошо юзать, но стает вопрос, как замокать метод компонента, чтобы он не слал запрос, а возвращал для теста заготовленные данные?
window.$axios.get.... потому что проект начали делать до меня и не родной vuex-axios подключен к проекту, а как отдельный код.
И в главном файле инициализации:
import axios from "axios";
Vue.prototype.$axios = axios;
window.$axios = axios;
Этот скрипт нужно запускать каждый день.
Данные добавляются в файл с нарастанием и БД тоже растет.
Боюсь, что за сутки не успевает все обрабатывать. Тем более файлов много.
использую Laravel updateOrInsert
Вот вычитал, что хорошо бы отключать кеширование
DB::connection()->disableQueryLog();
И хорошая идея, например данные не вставлять сразу, а собирать в ОЗУ, а потом массовой вставку делать, но хватит ли ОЗУ, или каждые 100-200 записей делать.
А у меня 3 вкладки и огромный результат поиска.
Я кликаю на результат поиска и он открывается в новом роуте
(почему не попап, хз, до меня так сделали)
Поэтому я сделал кеширование, чтобы не заходить на 3-ю вкладку,
не отображать результаты поиска снова.
Я проверяю откуда зашел. Если с просмотра детального результата
из поиска - то отображаю кеш, а если с другого роута,
хочу отключить кеширование и перезагрузщить компонент
буд-то впервые зашел, только без перезагрузки страницы.
Я пока вручную чищу результат поиска, переключаюсь на первую вкладку,
но думаю, что есть красивый подход.
Kovalsky, Не решит - т.к. пробовал и куки, и localStorage - при открытии браузера, он восстанавливает вкладки, и успевает отправить запрос до того, как localStorage изменится... У меня комп не слабый, на 7-8 вкладках такое произошло, на слабом компе с 4 вкладки уже...