Ba Dun started his professional football career in 2014 when he was promoted to Chinese Super League side Beijing Guoan's first team squad.[1] He was loaned to China League Two side Meizhou Hakka for Half season in July 2015. Meizhou Hakka extended his loan deal for another season in January 2016 after they won promotion to China League One. He played just five league match in the 2016 season due to injury.
Ba returned to Beijing Guoan's first team in the 2017 season, which newly required at least one Under-23 player must be in the starting line-up.[2] He gained the starter from Tang Shi after manager José González was sacked by the club.[3] On 18 June 2017, he made his Super League debut in a 2–0 home win over Tianjin TEDA, assisting Renato Augusto's goal in the 60th minute.[4] He scored his first goal for Beijing Guoan on 5 August 2017, in a 2–2 home draw against Shandong Luneng Taishan.[5] Ba was a regular starter under caretaker manager Xie Feng and then Roger Schmidt. At the end of the 2017 season, he went on to make 17 appearances and scoring once in the Chinese Super League.[3] On 24 April 2019, Ba scored his first AFC Champions League goal in a 2-0 home win against Buriram United in the group stage.
In April 2021, Ba joined fellow Chinese Super League club Tianjin Jinmen Tiger on loan for the 2021 season. He made his debut for Tianjin on 22 April 2021 in a 6-1 defeat against Shanghai Port, and scored his first goal for the club on 6 August 2021 in a 1-1 draw against Wuhan. On 22 January 2022, Ba joined Tianjin on a permanent deal.[6]