You can make use of textarea tag of html, later you can add the styling to the textarea tag. It pretty much solves your all issues including line breaks and tab spaces. Cheerzz...
eg: Your render will look something like below
render() {
var text = "One\nTwo\nThree";
return <div><textarea>{text}</div>;textarea>;
}
Output:
One
Two
Three