Haas scored his first goal in his fourth game of the season to put Edmonton up 2-0 at 17:55 of the second period. Andersson scored 45 seconds later after a Johnny Gaudreau pass to make it 2-1.
"Somehow we still have to find a way to score the first goal and play with the lead and take it from there," Andersson said. "I mean, we're chasing the game, and they go 2-0 and then it's 2-1 and then we're chasing in the entire third period. You're not going to win a whole lot of games when you're chasing from behind the whole time."
Smith made five saves in the third period, including one on Matthew Tkachuk in close with 1:21 remaining and Rittich on the bench for an extra attacker.
The goalie is 4-0-0 in five starts for the Oilers since his season debut Feb. 8. He was pulled against the Winnipeg Jets on Monday in his only start without a decision.
"He had the one tough night, but other than that, he's been really solid, solid again tonight too," Tippett said. "We're a team that we need both guys and up and going, and now with 'Smitty' back it looks like he's playing real well, and [Mikko Koskinen] will get back in there and he'll play real well, and I think they'll be a real good asset for our team."
The teams finish a back-to-back home-and-home at Edmonton on Saturday (10 p.m. ET; NHLN, CBC, SN, NHL.TV).
NOTES: Flames forward Sam Bennett was benched and did not play the third period. Ward said "we'll keep that internal." Bennett, who played 6:30, had requested a trade through his agent and was a healthy scratch Feb. 4. ... Barrie is tied for second among NHL defensemen with 15 points (three goals, 12 assists) in 19 games. He, Victor Hedman (Tampa Bay Lightning) and Jeff Petry (Montreal Canadiens) are five points behind Quinn Hughes (Vancouver Canucks). ... Flames center Sean Monahan, who is on a 12-game goal drought, did not play because of a lower-body injury. He is day to day.