VNC cannot currently show desktop

So I am trying to use a headless Raspberry pi 4 but when I launch my Raspberry pi 4 not connected to any screens then my VNC says “Cannot currently show the desktop”. I am assuming this is because the raspberry pi is loading in some kind of only text mode, maybe because the VNC screen sharing loads perfectly when the Pi is hooked up to a monitor when it boots. So how do I stop this from happening or make my Pi boot in desktop mode only?