NEWARK, N.J. - The New Jersey Devils got more than a win against the Vancouver Canucks. They're getting dinner, too.

Goaltender Cory Schneider is breaking out his credit and taking the team out to eat after making 21 saves in 4-2 victory over the Canucks on Friday night.

The win was Schneider's first against his former teammates, and it was interesting.

The Devils built a 3-0 lead in the second period, saw the Canucks cut the margin to a goal in the third period and then held on before Mike Cammalleri scored his second goal and 20th of the season into an empty net for a game-icing short-handed goal with 2:07 left in regulation.

"I hadn't beaten them before and since they're my old team, this was a special one," Schneider said. "We were able to handle them after they scored the second goal and did a great job of protecting the lead. They were really buzzing after the second one, pulling the goalie with 4 minutes left and playing four forwards. It was a great win against a very good team."

Cammalleri was ready for dinner.

"I really like caviar so his credit card will need a respirator after that," Cammalleri joked. "I am sure it feels good for him. You play your former team and there is a little more focus and he seemed ready to go tonight."

Schneider laughed about the caviar, explaining the place he is taking the team doesn't have that item.

Jordin Tootoo and Patrik Elias also scored for New Jersey and defenceman Adam Larsson had a career-best three assists to give the Devils points in 12 of their last 14 games (9-2-3) at the Prudential Center.

Zack Kassian scored both goals for the Canucks, who came close to tying the score in the third period after falling behind 3-0. Radim Vrbata had two good chances and Chris Higgins had a couple of whacks at a loose puck in the crease on a late power play before Cammalleri iced the game.

"It's nice to finally put the puck in, but it's disappointing to not get at least a point here," Kassian said. "We came so close after coming back, so it's a little hard to handle right now. They made some smart plays on us early and that hurt us. It's tough not being able to squeeze a point out of this."

Backup goalie Eddie Lack had 23 saves in seeing his three-game winning streak snapped.

The Devils, who are facing the prospect of missing the playoffs for the third straight season after reaching the Stanley Cup finals in 2012, seemingly broke the game open early in the second period when Tootoo and Cammalleri scored 2:08 apart.

Tootoo pushed the lead to 2-0 less than a minute into the period when he took a pass from Larsson, swept in on the left wing and beat Lack with wrist shot from the dot.

Cammalleri pushed the lead to 3-0 with a power-play goal at 2:58. The Devils' leading-goal scorer exchanged passes with defenceman Eric Gelinas and ripped a shot past a screened Lack from above the right circle.

Kassian, who got a chance to play with Daniel and Henrik Sedin while Alex Burrows is out, got Vancouver back in the game with goals in close. He tapped in his own rebound at 6:23 of the second period to make it 3-1 and then chipping Henrik Sedin's pass over Schneider's shoulder at 3:04 of the third period.

Lack went to the bench with a little more than 2 minutes to play and Cammalleri scored quickly.

In beating the Rangers in a shootout on Thursday, the Vancouver also pulled goaltender Ryan Miller early and Henrik Sedin tied the game with 2:00 left in regulation.

"We've been hustling and working hard like this for a long time," Henrik Sedin said. "We never give up and that's the sign of a good team. That's all we can ask for."

The win snapped the Devils' six-game losing streak against the Canucks, dating to 2009-10.

NOTES: Devils RW Steve Bernier, who was playing in his 200th NHL game, didn't pick up any points in the game but he was on Lack's crease blocking his view on the goals by Elias and Cammalleri. ... Burrows, who scored in the shootout against the Rangers, was scratched after taking part in the pregame skate. ... The Canucks beat New Jersey 2-0 in Vancouver earlier this season. ... This was the second of a five-game road trip for Vancouver. Next stop: the Islanders. ... The Devils are 2-0 on their current six-game homestand. They will face Carolina on Saturday.