J'ai une chaîne qui contient un nouveau caractère de ligne/n. Essayer d'afficher
la chaîne. Au lieu de prendre le/n comme nouvelle ligne, il affiche '/ n' comme texte.
$scope.myOutput = " Hello /n"
{{ myOutput | textFormat }}
Obligatoire -> Bonjour (sur la page html)
A essayé :
app.filter('textFormat', function() {
return function(x) {
return x.replace(/\\n/g, '<br/>');
}
Styles CSS éprouvés comme les espaces blancs: pre;
Cela ne le remplace pas, mais vous pouvez utiliser l'attribut CSS white-space: pre-line;
pour afficher le\n dans le navigateur: https://developer.mozilla.org/en-US/docs/Web/CSS/white-space
div {
white-space: pre-line;
}
<div>Foo
Bar
Baz Foo
Bar
Baz
</div>
1 - Réécrivez votre filtre de la manière suivante:
.filter('textFormat', function() {
return function (x) {
return x.replace(new RegExp('\/n', 'g'), '<br/>');
}
})
2 - dans votre html vous devez utiliser la syntaxe suivante:
<span ng-bind-html="myOutput | textFormat"></span>
Où myOutput
est $scope.myOutput = ' Hello /n'