Оценка сайтов | Игра на Laravel elnowars.ru!
Норм да нет? (Открытое голосование)
Да (42 чел. - 71 %)
Нет (17 чел. - 28 %)
Всего проголосовало: 59 чел.
Вилы Выкидные (13.07.2021 в 17:39)
это всего лишь анимация, тебе один раз нужно взять данные с сервера и делать анимацию на JS, а на сервере только при обновлении делать просчёты и обновлять БД, а так ты аяксом постоянно долбишь вычисления
это всего лишь анимация, тебе один раз нужно взять данные с сервера и делать анимацию на JS, а на сервере только при обновлении делать просчёты и обновлять БД, а так ты аяксом постоянно долбишь вычисления
Анимация идёт от того какие данные пришли в ответе от сервера, а на сервере только при обновлении раунда или при вашей атаке или атаке ботов идут запросы в базу и все вычисления.
gisen (13.07.2021 в 18:34) Повторяю, таймер всего 1. И он просто обновляется когда с axios.get('/allbattle/round').... или с других запросов приходит ответ, по сути этот таймер нужен только для того чтобы вы знали сколько у вас времени для удара и использования банок и если вы не ударили, то ход переходит к другому axios.get('/allbattle/round')... по завершению таймера. Ни каждый запрос на сервер берет данные с базы. Запросы на сервер от клиента идут по очереди с задержкой Если пришёл ответ от axios.get('/allbattle/round')... то через пол секунды запрашиваем информацию по оппоненту, далее в оппоненте смотрим, пришёл ли ответ и запускаем атаку ботов и так по кругу.
таймер один но запущен несколько раз javascript
if (response.data.next === true && this.next == 3) { this.next = 4 setTimeout(() => { this.getOpponent() }, 450) }
gisen (13.07.2021 в 18:38)
Анимация идёт от того какие данные пришли в ответе от сервера, а на сервере только при обновлении раунда или при вашей атаке или атаке ботов идут запросы в базу и все вычисления.
Анимация идёт от того какие данные пришли в ответе от сервера, а на сервере только при обновлении раунда или при вашей атаке или атаке ботов идут запросы в базу и все вычисления.
и так каждый такт таймера
Вилы Выкидные (13.07.2021 в 18:47) таймер один но запущен несколько раз
Нет, он запускается всего 1 раз при монтировании
javascript
mounted() { this.setTimeoutOne() }, // И уже в methods просто идёт отсчёт раз в секунду methods: { setTimeoutOne() { setTimeout(() => { this.timer-- this.setTimeoutOne() }, 1010) }, } ________
посл. ред. 13.07.2021 в 19:15; всего 1 раз(а); by gisen
gisen (13.07.2021 в 19:14) Нет, он запускается всего 1 раз при монтировании А с запросов просто обновляем время this.timer
у тебя в браузере запускается очередной таймер в то время как предыдущий не удалён и продолжает работу либо ты подгружаешь скрипт ещё раз в блок в котором уже был подгружен такой скрипт и так в геометрической прогрессии короче долго пояснять
javascript
mounted() { this.setTimeoutOne() }, // И уже в methods просто идёт отсчёт раз в секунду methods: { setTimeoutOne() { setTimeout(() => { this.timer-- this.setTimeoutOne() }, 1010) }, } Вилы Выкидные (13.07.2021 в 20:09)
у тебя в браузере запускается очередной таймер в то время как предыдущий не удалён и продолжает работу
либо ты подгружаешь скрипт ещё раз в блок в котором уже был подгружен такой скрипт и так в геометрической прогрессии
короче долго пояснять
у тебя в браузере запускается очередной таймер в то время как предыдущий не удалён и продолжает работу
либо ты подгружаешь скрипт ещё раз в блок в котором уже был подгружен такой скрипт и так в геометрической прогрессии
короче долго пояснять
Походу ты меня не понял, ты описываешь вообще то чего нет в коде. Я использую VUE если что.
Вилы Выкидные (13.07.2021 в 20:09)
у тебя в браузере запускается очередной таймер в то время как предыдущий не удалён и продолжает работу
либо ты подгружаешь скрипт ещё раз в блок в котором уже был подгружен такой скрипт и так в геометрической прогрессии
короче долго пояснять
у тебя в браузере запускается очередной таймер в то время как предыдущий не удалён и продолжает работу
либо ты подгружаешь скрипт ещё раз в блок в котором уже был подгружен такой скрипт и так в геометрической прогрессии
короче долго пояснять
Он просто по логике не может запуститься много раз, он запустился 1 раз и больше не удаляется в течении всего боя, туда просто добавляется время.
Вилы Выкидные , mounted() {
this.setTimeoutOne()
}, В VUE происходит 1 раз при первой загрузки страницы. И далее по коду нигде не вызывается this.setTimeoutOne(), только сам себя каждую секунду.
this.setTimeoutOne()
}, В VUE происходит 1 раз при первой загрузки страницы. И далее по коду нигде не вызывается this.setTimeoutOne(), только сам себя каждую секунду.
gisen , какая разница в том, как ты неправильно юзаешь JS, открой инструменты разработчика и посмотри сколько у тебя ОДИН И ТОТ ЖЕ скрипт раз запускается при каждом действии
Вилы Выкидные (13.07.2021 в 21:10)
gisen , какая разница в том, как ты неправильно юзаешь JS, открой инструменты разработчика и посмотри сколько у тебя ОДИН И ТОТ ЖЕ скрипт раз запускается при каждом действии
gisen , какая разница в том, как ты неправильно юзаешь JS, открой инструменты разработчика и посмотри сколько у тебя ОДИН И ТОТ ЖЕ скрипт раз запускается при каждом действии
Ну так и задумано запускать каждое действие примерно раз в 2 секунды.