Flash floods and landslides triggered by Tropical Storm Jangmi have left at least 31 people dead and seven missing in the Philippines, including in areas still recovering from last year's Typhoon Haiyan, officials have said.

Jangmi, packing winds of 65 kilometres per hour and gusts of 80 kph, had dumped heavy rains on southern Mindanao Island.

Floods destroyed bridges and highways, sending thousands of residents to evacuation centres.

The storm then pushed its way through eastern and central islands, where most of the deaths occurred on Tuesday.

The government weather bureau said that as of late Tuesday afternoon, the eye of the storm was 140 kilometres southwest of central Iloilo City, moving west at 19kph towards western Palawan Island.

Mayor Stephanie Uy-Tan said 12 people died when a landslide buried two vans and six houses near a mountainside highway in eastern Catbalogan City.

She said voices could still be heard from one of the vans and that rescue efforts were ongoing.

Olive Luces, a regional civil defence official, said 11 members of a family died after a creek-side house where they had gathered was washed away by flash floods in central Cebu province.

Six other people were missing in the same town.

In eastern Leyte province's Tanauan town, which was devastated last year by Typhoon Haiyan, army rescuers retrieved five bodies from a house buried by landslide.

A 65-year-old man died due to drowning in southern Compostela Valley province, while another resident remains missing after crossing a swollen river.

In central Bohol province, an 80-year old man drowned to death, while a 10-year-old girl died in a landslide that hit her home in southern Butuan City, officials said.

Source: Agencies