Last updated
Last updated
Наиболее простой способ связывания данных — это текстовая интерполяция с использованием синтаксиса Mustache (двойных фигурных скобок):
Выражение в фигурных скобках будет заменено значением свойства msg
соответствующего объекта данных. Кроме того, оно будет обновлено при любом изменении этого свойства.
Возможно также выполнение интерполяции однократно, которая не обновится при изменении данных — с помощью , но это повлияет сразу на все связанные переменные в рамках данного элемента:
Значение выражения в двойных фигурных скобках подставляется как простой текст, а не как HTML. Для HTML необходимо использовать :
Результат:
Содержимое тега span
будет заменено значением свойства rawHtml
, интерпретированного как обычный HTML — все привязки данных игнорируются.
Нельзя использовать v-html
для вложения шаблонов друг в друга, потому что движок шаблонов Vue не основывается на строках. Вместо этого нужно использовать компоненты, позволяющие сочетать и переиспользовать элементы UI.
Динамическая отрисовка произвольного HTML-кода на сайте крайне опасна, так как может легко привести к XSS-уязвимостям.
При связывании данных Vue поддерживает всю мощь выражений JavaScript:
Выражения будут вычислены как JavaScript-код в области видимости соответствующего экземпляра Vue. Единственное ограничение в том, что допускается лишь одно выражение, поэтому код ниже НЕ сработает:
Выражения в шаблонах выполняются в режиме «песочницы», поэтому доступ есть только к ограниченному списку глобальных объектов, таким как Math
и Date
. Не нужно пытаться получить доступ к пользовательским глобальным объектам внутри выражений используемых в шаблонах.
В интреполяции можно использовать как методы так и вычисляемые значения
В функцию можно передавать значение
Можно использовать computed свойства
Но вызывать уже не нужно: