These are the reasons (imo) in order of importance why Corbyn lost. [Note: the tories didn't actually win the hearts and minds of voters by reasoning and logic -- their vote only increased by one to two per cent.] The truth is, Labour LOST.
1. Labour lost the northern and midlands traditional vote by reneging on its pledge to honour the result of the referendum. Their fudge to hold a second referendum was doomed from the start. Labour voters either couldn't understand it or didn't buy it. They just felt betrayed.*
2. The Brexit vote split Labour's majority in many constituencies (see Heywood and Middleton near me) -- many Labour voters couldn't bring themselves to vote tory but did vote Brexit, denying Labour a win.
3. Four years of continual and unending Corbyn bashing and smear tactics by the corporate media (especially the fraudian and the BBC) was bound to have an effect, and it did. They tried every trick in the book to present him as a traitor, a doddering old fool, a dangerous Marxist who would ruin the country, an enabler of terrorism, a threat to national security etc etc etc. As someone has argued elsewhere, the advertising industry doesn't spend trillions of pounds a year because they think it's a waste of money.
4. A carefully planned and well-funded campaign by Israel and its Zionist fellow-travellers in the Labour party to divide the party and to paint Corbyn and his supporters as anti-semitic. It worked.
5. Corbyn's inability and ineptitude in dealing with the AS smear campaign. He and McDonnell made a total mess of it right from the start. What on earth was Seamus Milne doing all this time? Having a wank in the corner?
*A qualification. Corbyn allowed the party exec to overrule him on whether to support Brexit. He was weak on this (as on combatting the AS smear campaign), thinking it was the decent and honourable thing to do -- listening to and allowing his colleagues to have their say. Doing the "decent and honourable" thing doesn't win elections.