У меня есть эта часть моего кода, которая работает правильно, но eww ...
const anim = new Animated.ValueXY({
x: 0, y: 0
});
const bounce = () => {
const move = (x, y, duration) =>
Animated.timing(anim, {
toValue: {
x: x,
y: y
},
duration: duration,
});
const randomNumberRange = () => Math.floor(Math.random() * (20 - -20 + 1) + -20);
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(randomNumberRange(), randomNumberRange(), 20).start(() => {
move(0, 0, 20).start();
}); }); }); }); });
}); }); }); }); });
};
Моя проблема в том, что я не понимаю, как правильно сделать рекурсив с этим обратным вызовом запуска (tbh idk, если это даже обратный вызов, да, я испортил свой отступ, чтобы он был «читабельным») заранее спасибо за вашу помощь!