In a Division 2 fixture switched to St Helens, Triangle were dismissed for 77.
Portsmouth openers Danielle Ransley and Maya Devenish reached their target off the first ball of the 11th over.
It was Portsmouth’s fifth successive second tier victory, after their first league game of the season was cancelled due to bad weather.
Opener Caitlin Felstead (26) and No 3 Laura Ineson (19) saw Triangle reach 51-1.
But Ineson’s dismissal - bowled by Lauren Urch (2-31) sparked a spectacular collapse.
Triangle’s last nine wickets fell for just 26 runs, with Imogen Wallace (3-6) and Millie Watkinson (2-12) doing some of the damage.
Five of Triangle’s last seven batters failed to trouble the scorers.
Skipper Ransley (39 not out off 33 balls) and Devenish (24 not out off 29 balls) then guided Portsmouth to a comfortable success.

1. Danielle Ransley bowling for Portsmouth
Danielle Ransley bowling for Portsmouth. Picture: Mike Cooter Photo: Mike Cooter

2. Lauren Urch bowling for Portsmouth
Lauren Urch bowling for Portsmouth. Picture: Mike Cooter Photo: Mike Cooter

3. Laura Ineson batting for Railway Triangle
Laura Ineson batting for Railway Triangle. Picture: Mike Cooter Photo: Mike Cooter

4. Caitlin Felstead avoids being run out. Florence Bundy is the Portsmouth wicket-keeper
Caitlin Felstead avoids being run out. Florence Bundy is the Portsmouth wicket-keeper. Picture: Mike Cooter Photo: Mike Cooter