1

Я создаю SPA. Я использую нокаут и наблюдаемый массив для итерации массива json. Иногда у меня есть ярлык br внутри текста, и с использованием data-bind = "text: myVar" я хотел бы перевести строку. Проблема в том, что br-теги не работают, потому что я вижу < br/> кроме новой строки. Мой вопрос: как я могу заставить knockout data-bind создать новую строку, используя эти теги br из json-данных ?. Я пытался использовать «white-space: pre-wrap», но не работал.Создание новой строки с использованием текста нокаута

ответ

4

Вам просто нужно связать, используя html: вместо text:, и обработает <br />.

Выполните ниже фрагмент кода:

var viewModel = { 
 
    myVal: ko.observable('First Line <br />Second Line <br />Third Line') 
 
}; 
 

 
ko.applyBindings(viewModel);
* { 
 
    font-family: Arial; 
 
    }
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script> 
 
<h2>Text Binding:</h2> 
 
<span data-bind="text: myVal"></span> 
 
<h2>HTML Binding:</h2> 
 
<span data-bind="html: myVal"></span>

+0

Да, я уже сообразить, это :). Но спасибо за ответ! – Shagohad

Смежные вопросы