Merge branch 'ASTRA-85' into 'master'
WIP Исправил ошибку срабатывания интервала See merge request andrusyakka/urban-couscous!385
This commit is contained in:
@@ -51,6 +51,7 @@
|
|||||||
import BaseInput from "@/components/base/BaseInput";
|
import BaseInput from "@/components/base/BaseInput";
|
||||||
import BaseInputContainer from "@/components/base/BaseInputContainer.vue";
|
import BaseInputContainer from "@/components/base/BaseInputContainer.vue";
|
||||||
import { ruleNumberInput } from "@/shared/utils/rulesInputs";
|
import { ruleNumberInput } from "@/shared/utils/rulesInputs";
|
||||||
|
import { roundNumber } from "@/shared/utils/methodsObjects";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "BaseInputNumber",
|
name: "BaseInputNumber",
|
||||||
@@ -58,7 +59,9 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
intervalId: 0,
|
intervalId: 0,
|
||||||
|
timeoutId: 0,
|
||||||
ruleNumberInput: [(val) => ruleNumberInput(val, this.max, this.min)],
|
ruleNumberInput: [(val) => ruleNumberInput(val, this.max, this.min)],
|
||||||
|
roundNumber: roundNumber,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
@@ -163,18 +166,23 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
fastIncrement() {
|
fastIncrement() {
|
||||||
this.intervalId = setInterval(() => this.increment(), 100);
|
this.timeoutId = setTimeout(() => {
|
||||||
|
this.intervalId = setInterval(() => this.increment(), 100);
|
||||||
|
}, 500);
|
||||||
},
|
},
|
||||||
fastDecrement() {
|
fastDecrement() {
|
||||||
this.intervalId = setInterval(() => this.decrement(), 100);
|
this.timeoutId = setTimeout(() => {
|
||||||
|
this.intervalId = setInterval(() => this.decrement(), 100);
|
||||||
|
}, 500);
|
||||||
},
|
},
|
||||||
deleteInterval() {
|
deleteInterval() {
|
||||||
|
clearTimeout(this.timeoutId);
|
||||||
clearInterval(this.intervalId);
|
clearInterval(this.intervalId);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
value(val) {
|
value(val) {
|
||||||
this.value = Number(val).toFixed(this.rounding);
|
this.value = this.roundNumber(val, this.rounding);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
|||||||
6
src/shared/utils/methodsObjects.js
Normal file
6
src/shared/utils/methodsObjects.js
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
export function roundNumber(val, digits, rounded = "floor") {
|
||||||
|
let fraction = 10 * digits;
|
||||||
|
return fraction
|
||||||
|
? Math[rounded](val * fraction) / fraction
|
||||||
|
: Math[rounded](val);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user