The Royals simply cannot lose.

Thanks in part to a grand slam by Alex Gordon, the Royals beat the D-backs, 8-1, on Wednesday at Salt River Fields for their 11th straight win.

Since opening the Cactus League with a 5-5 tie against the Rangers, the Royals have not lost.

Gordon paced the Kansas City offense with the slam in the fifth inning off Patrick Corbin. Gordon went 3-fo-4, adding a single and a double, driving in four and scoring twice.

"It definitely felt good," Gordon said. "Bases loaded, I've always been told you just try to step out and relax yourself and not try to do too much. Especially on that 3-1 count, just try to stay simple and that's what I did. Sometimes you just put a good swing on it and that's what happened."

Presumptive Opening Day starter James Shields tossed three shutout innings, allowing a pair of hits while striking out two.

The Royals got on the board in the first inning against D-backs starter Trevor Cahill when Jeff Francoeur singled home Alcides Escobar, who went 2-fo-4 with two runs scored. Cahill went 2 2/3 innings, allowing one run on six hits with two strikeouts.

The Royals added a pair of runs in the fourth. Escobar drove in the first run of the inning with a triple that bounced off the wall in center and scored when catcher Rod Barajas' errant pickoff throw sailed into left field.

Corbin, who is battling Tyler Skaggs and Randall Delgado for the No. 5 spot in the rotation, came on to pitch the fifth and the Royals quickly loaded the bases against him with one out.