@gcardozo that's an interesting link. The page right before that on FlxSprite answers my question:
It is pretty common place to extend FlxSprite for your own game's needs; for example a SpaceShip class may extend FlxSprite but could have additional variables for the game like shieldStrength or shieldPower.
Therefore, the main use-case of HaxeFlixel is inheritence-based, using the Flx* primitives as building-blocks.
For the record, I also created an ECS (actually, three) using HaxeFlixel. Ultimately, I moved away from this approach, because of a) duplication of fields across components (eg. synching the coordinates two-ways between a PositionComponent and the FlxSprite depending on if the user called move or if I'm using FlxSprite.velocity), and b) collision detection just didn't work reliably for some reason.
After moving away from using an ECS, I write less code and go faster, so I'm happy.