Di Maria opened the scoring with a fine curling shot before setting up Cavani, and Mbappe added a third from close range before half-time.
PSG were without Brazil forward Neymar, who was suspended for hitting a fan following their defeat in the French Cup final by Stade Rennais.
The 20-year-old Mbappe scored again in the second half, becoming the first French player to net 32 goals in Ligue 1 since Philippe Gondet's 36 for Nantes in the 1965-66 season.
After the match, striker Cavani confirmed his desire to remain with the French champions next season for his final year of contract.
The Uruguay international endured an injury-hit campaign, but insisted that he feels settled in the French capital.
"I have said it before and I will say it again: first of all, I will respect my contract," he told Canal+ of his deal until 2020. "I have already said that I want to see out my contract here. After that, we will see.
"I want to stay and to be here because I feel that there are many things left to do. I love this club, as well as the life that I have, and my family is good here.
"Aside from that, as you know, sometimes it does not depend on you in football. The leaders and the president might prefer something else in the background, but I want to stay here and finish my contract. Once my deal expires, I do not know what will happen."
Cavani also distanced himself from rumours linking him with an eventual return to Napoli and reiterated his intention to return with PSG next term.
"I will not say anything [about Napoli], just that first and foremost I want to see out my contract," he said. "I cannot say anything else on that. Of course [asked if he will still be with PSG next season]. That is normal."
Right-back Thomas Meunier, who played a role in Cavani's goal to make it 2-0 inside of five minutes, was less optimistic about his own Parc des Princes future.
"As I have already said, I am not really clear with the club or myself," the Belgium international told Canal+. "People have inquired left and right but I still have a year left on my contract.
"The club knows what I want -- I have always said that I want to stay. That said, do they agree, or do they want to change the Parisien cycle?
"Nothing is very clear right now, so we will see how it goes. I think that there will be news over the summer."
Goalkeeper Alphonse Areola, who kept a clean sheet, told Canal+ that "I am here -- after that, we will see" when asked about his future.
Dijon will go into the relegation playoffs as a result of the loss.