For a climb, vnav is not sufficient. Vnav will stop climb according to altitude restrictions but you have to tell it how you want it to climb in the first place.
You don’t technically have to use FLC it is just the recommended. You can also use v/s or pitch