Donald Trump has agreed to hold a debate with Kamala Harris, after she said she was "ready" to take him on.