Vancouver Canucks forward Sam Lafferty, right, celebrates his goal with...

Vancouver Canucks forward Sam Lafferty, right, celebrates his goal with teammate forward Ilya Mikheyev during the first period of an NHL hockey game against the Calgary Flames, Saturday, Dec. 2, 2023 in Calgary, Alberta. Credit: AP/Jeff McIntosh

CALGARY, Alberta — Ilya Mikheyev and Sam Lafferty each had a goal and an assist as the Vancouver Canucks beat the Calgary Flames 4-3 Saturday night.

Quinn Hughes and Elias Pettersson also scored for the Canucks, and Filip Hronek had three assists. Thatcher Demko stopped 19 shots.

Vancouver has been alternating wins and losses the last eight games, a stretch that was preceded by a 5-2 loss at Calgary on Nov. 16.

“Good win for us, these guys beat us a couple of weeks ago,” Hughes said. “We just got to keep putting it together every night and find a way to win.”

Elias Lindholm scored twice and Mikael Backlund also had a goal for the Flames, who snapped a two-game win streak. Jacob Markstrom finished with 18 saves.

“We weren't good enough to win the game,” Lindholm said. “Overall, they were more desperate than us. In the first, they were stronger on pucks and won more battles were just better overall.”

Vancouver led 2-1 after the first period and 3-1 heading into the third.

Vancouver Canucks goalie Thatcher Demko, right, blocks the net as...

Vancouver Canucks goalie Thatcher Demko, right, blocks the net as Calgary Flames forward Martin Pospisil deflects the puck wide during the first period of an NHL hockey game, Saturday, Dec. 2, 2023 in Calgary, Alberta. Credit: AP/Jeff McIntosh

The Canucks maintained that lead until Lindholm pulled the Flames within one with 4:21 remaining.

Nikita Zadorov then shot at an empty Flames net, but teammate Pettersson touched it before it went in the net to make it 4-2 with 1:20 left.

“We got the job done, we got a ‘W,' that's all that matters," said Zadorov, who was making his Canucks debut two nights after being acquired from the Flames.

“They were chirping me,” Zadorov said about his former teammates. “It’s fun. It’s between us. I love them. They love me. It’s a mutual relationship. I had fun playing against them today.”

Vancouver Canucks defenseman Nikita Zadorov, right, swats away a check...

Vancouver Canucks defenseman Nikita Zadorov, right, swats away a check from Calgary Flames forward A.J. Greer during the first period of an NHL hockey game, Saturday, Dec. 2, 2023 in Calgary, Alberta. Credit: AP/Jeff McIntosh

Lindholm then scored again with 54 seconds to go to make it 4-3 and the Canucks held on for the road win two nights after a 4-1 loss at home to Vegas.

“I thought we grinded pretty well,” Vancouver coach Rick Tocchet said. “We hung in there, getting up 3-1. At the end I think we lost a little bit of composure but I thought for the most part the resiliency, nice bounce-back game after the Vegas game so I got to give the guys a lot of credit."

Vancouver opened the scoring at 2:03 on its first shot of the game. Taking a pass from Brock Boeser, Hughes strode off the sideboards and from the faceoff dot snapped a shot that beat Markstrom glove side.

Lafferty doubled the lead just over six minutes later when Hronek’s slapshot from the blue line hit Mikheyev in front and caromed to Lafferty, who knocked in his sixth goal.

Calgary got on the scoreboard at 12:18 of the first when it’s slumping power play, which entered the game 1 for 34 in the previous 12 games, came through on its first opportunity. After a strong play by rookie Connor Zary to keep the puck in at the blue line while fending off pressure from Lafferty, he then got the puck to MacKenzie Weegar who set up Adam Ruzicka whose hard pass to the front of the net was steered in by Backlund.

The Flames finished 2 for 5 on the man advantage while the Canucks were 0 for 4.

Zadorov didn't have a warm welcome back as the defenseman, who had requested a trade, was lustily booed every time he touched the puck in the first period.

“Calgary's got great fans, he kind of laughed about it, no big deal,” Tocchet said.

UP NEXT

Canucks: Host New Jersey on Tuesday night to open a five-game homestand.

Flames: Host Minnesota on Tuesday night.

Newsday LogoSUBSCRIBEUnlimited Digital AccessOnly 25¢for 5 months
ACT NOWSALE ENDS SOON | CANCEL ANYTIME