so an example of where to use it is common getter functions, so if GetPlayerInventory is something along the lines of GetPlayerPawn(0)->GetComponentByClass etc you can put that in a function library and reuse it. this allows you to handle the IsValid checks with error checking too
you mean the inventory component is empty? as in lost all its functions etc? possibly you made a duplicate by mistake?