The gunman was known to French security services and anti-terrorist police are leading the investigation.
A police statement said that one of the gunmen was shot dead at the scene although this could just be clumsy wording. The attacker's car and home are being searched.
French presidential candidate, Marine Le Pen, has expressed "emotion and solidarity" for the security forces.
Émotion et solidarité pour nos forces de l'ordre, à nouveau prises pour cible. MLP— Marine Le Pen (@MLP_officiel) April 20, 2017