The teams were set to play two games at West Ham's Olympic Stadium, on June 13 and 14.
Baseball commissioner Rob Manfred made the announcement in a memorandum sent to MLB employees on Wednesday.
"We made the decision because it was unlikely the events would go forward, and timely cancellation allowed us to preserve important financial resources," Manfred wrote. "We also have canceled agreements with service providers and delayed projects that involve large capital expenditures."
The Cardinals won the National League Central last season. The Cubs made a push late but then faded to finish third.
Opening Day was to have been March 26, but MLB has delayed the start of its season until mid-May at the earliest. The NBA, NHL and all other major sports leagues are currently on hold. Like the United States, Great Britain has been hard hit by the virus.
MLB had already canceled two series scheduled for this season, in Mexico City and San Juan, Puerto Rico.
The San Diego Padres had been scheduled to play the Arizona Diamondbacks on April 18-19 in Mexico City, and the New York Mets were supposed to play the Miami Marlins on April 28-30 in San Juan. The games will be rescheduled for the home teams' sites in Arizona and Miami, MLB said.
Manfred also referenced last week's agreement with the players' association in which teams agreed to provide $170 million in advance pay and the union agreed not to make claims for additional pay. As part of the deal, if the season is scrapped, players would receive service time for 2020 matching what they received in 2019.
"The agreement provided much needed certainty to our clubs and avoided a confrontation with the players' association at a time when our country has limited tolerance for petty squabbles," Manfred wrote. "Most important, I truly believe that the agreement is a necessary first step toward getting the game back on the field."
Information from The Associated Press was used in this report.