We had this problem with my now 4 year old when she was about 3. She learned that if she didn't eat her dinner, she could ask for something later and get something more snack-like (still nutritious). I was very flexible with her eating when she was a toddler, because I don't think too much structure is necessary at that age as long as you're providing nutritious options. Once I figured that out, I'd leave her plate out and it stayed the rest of the night in case she got hungry later. It only took a few days for her to figure out that she wasn't getting anything else. She'd go and eat her dinner just before bed so she wasn't hungry. Eventually she figured it out and started at least eating a little bit of her food. I also work really hard to make foods I know they'll like, or at least provide multiple options.
I should add this wasn't without whining and crying. I just calmly stated the situation and stayed firm and things eventually worked out, mostly.