Hi,
yes, you are right, maintain a "direction" instead of a target so to speak.
compute the direction of the projectile between the user and the mouse and then animate the projectile to a far greater distance, for example up to your maximum distance, that when the projectile reaches simply explodes or simply disappear.
does that make sense? You can achieve this by for example multiplying the vector between the mouse and user by 3 or 4 or 10, this will essentially keep the same direction but be far longer in magnitude.
Bye,
Jean