cordova global is available by default when you run your project under cordova (so an app on phone/tablet). Will not be available, obviously in a browser. No need to import cordova from 'cordova' – actually, don’t do that.
@Credo Read about configuring Vue Router in hash vs history mode. You are trying to access a path as if your Vue Router was configured to history mode ( http://localhost:8080/main), but the #/ at the end shows your Vue Router is in the default hash mode. http://router.vuejs.org/en/essentials/history-mode.html