Elias Pettersson scored the game-winner for his career-high 33rd goal of the season as part of a two-point performance as the Vancouver Canucks defeated the Anaheim Ducks 2-1, holding them to just 18 shots.