Существует ответ по Steven B
, который может решить вашу проблему, но я хотел бы добавить немного о проблеме, определяющей причину.Проблема в one-way-binding
, что я имею в виду, когда вы используете следующее:
<input type="text" v-bind:value="total">
Вы вводите новое отдельное состояние в DOM
, позволяя пользователю вводить ввод,Таким образом, когда пользователь вводит данные, свойство data.total
не обновляется, оно все равно 25
, но у входа DOM
есть новое значение.В этом случае, когда setInterval
срабатывает и data.btnDisabled
обновляется, состояние приложения изменяется, а затем VUE
просто вызывает повторный рендеринг компонента, чтобы синхронизировать data
и DOM
.Я бы предпочел v-model
вместо :value
.