If you will re-use/instance that node a lot, I'd use the input action approach.
So you don't have to worry about connecting to the appropriate signals on every new instance.
On the other hand, the signal approach is more lightweight (performance-wise) I guess.
So.. it's hard to suggest a "proper" way, both are ok.
It depends on how your project is structured, just pick the one that suits you the most.