Firefighter-paramedics responded to the 8200 block of San Fernando Road about 10: 40 a.m. and were assessing patients in a staging area near the six-car train.
The 21 injured people, all of whom had been on the train, were taken to hospitals with injuries that were not life-threatening, the Los Angeles Fire Department said.
The Antelope Valley line's No. 212 train was en route to downtown Los Angeles when the crash occurred, according to Metrolink and fire officials.
Aerial footage from AIR7 HD showed some of the 75 firefighters at the scene helping passengers disembark from the train, which was stopped at an intersection.
The L.A. Department of Transportation closed a section of San Fernando Road at the location during the investigation.
Update: AV Line 212 bus service to LA is provided with Transit Systems Unlimited bus #1115 will arrive shortly. TSU bus 1216 ETA 20 mins.— Metrolink (@Metrolink) September 6, 2016
The driver of the truck was not cited, but the investigation was ongoing.