I'm not sure if it counts as a "good" way, but one way you can handle the issue is set the scale of the player to negative one when the player is on the side the enemy sprite does not face. Something like this for example (untested):
# assuming this script is on the enemy sprite
var direction_to_player = to_local(player_node.global_position)
if (direction_to_player.x < 0):
scale.x = -1
else:
scale.x = 1