Калькулятор процентов в vuejs - PullRequest
0 голосов
/ 19 июня 2020

У меня проблема с моей страницей. Я новичок в vue. js и не знаю, как это исправить. Это калькулятор процентов. Он работает для расчета дня, кредитов и т.д. c. Он вычисляет недостающее число следующим образом:

кредит = (Полное число * проценты * день) / (100 * 365)

это мой код:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>

<body>
    <div id="app">
        <form class="calculate" @keydown.enter="add">
            <p>credit: <input type="number" id="credit" v-model="credit"></p>
            <p>Full number: <input type="number" id="Full_number" v-model="Full_number"></p>
            <p>percententa: <input type="number" id="percent" v-model="percent"></p>
            <p>day: <input type="number" id="day" v-model="day"></p>
            <p class="preview">{{vysledek}}</p>
        </form>
    </div>
    <script>
        var ap = new Vue({
            el: '#app',
            data: {
                credit: 0,
                Full_number: 0,
                percent: 0,
                day: 0,
                vysledek: 0,
            },
            methods: {
                add() {
                    if (!this.credit != 0 && !this.Full_number != 0 && !this.percent != 0 && !this.day == 0) { //day
                        this.vysledek = (this.credit * 365 * 100) / (this.percent * this.Full_number);
                    } else if (!this.credit != 0 && !this.Full_number != 0 && !this.day != 0 && !this.percent == 0) { //percententa
                        this.vysledek = (100 * 365 * this.credit) / (this.Full_number * this.day);
                    } else if (!this.credit != 0 && !this.percent != 0 && !this.day != 0 && !this.Full_number == 0) { //Full_number
                        this.vysledek = (this.credit * 365 * 100) / (this.day * this.percent);
                    } else if (!this.Full_number != 0 && !this.percent != 0 && !this.day != 0 && !this.credit == 0) { //credit
                        this.vysledek = (this.Full_number * this.percent * this.day) / (100 * 365);
                    } else return;
                }
            },
        })
    </script>
</body>

</html>

1 Ответ

0 голосов
/ 19 июня 2020

Поскольку вы никогда не запускаете add (), vysledek не обновляется. Один из вариантов - добавить кнопку для запуска add ().

Чтобы обновить значение, ничего не вызывая, используйте вычисленное значение вместо обновления значения с помощью метода. Чтобы использовать вычисленное значение, удалите vysledek из ваших данных () и добавьте его как метод под вычисляемым следующим образом:

methods: {
// your methods
},
computed: {
    vysledek() {
        if (!this.credit != 0 && !this.Full_number != 0 && !this.percent != 0 && !this.day == 0) { //day
            return (this.credit * 365 * 100) / (this.percent * this.Full_number);
        }
        else if (!this.credit != 0 && !this.Full_number != 0 && !this.day != 0 && !this.percent == 0) { //percententa
             return (100 * 365 * this.credit) / (this.Full_number * this.day);
        }
        else if (!this.credit != 0 && !this.percent != 0 && !this.day != 0 && !this.Full_number == 0) { //Full_number
             return (this.credit * 365 * 100) / (this.day * this.percent);
        }
        else if (!this.Full_number != 0 && !this.percent != 0 && !this.day != 0 && !this.credit == 0) { //credit
            return (this.Full_number * this.percent * this.day) / (100 * 365);
        }
            else return;
        }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...