📜  Vue.js 中与模板的数据绑定类型

📅  最后修改于: 2022-05-13 01:56:21.689000             🧑  作者: Mango

Vue.js 中与模板的数据绑定类型

在本文中,我们将看到在 Vue.js 中将数据与模板绑定的不同方法,并通过示例了解它们的实现。

当我们希望在模板中使用我们的变量或数据时,我们通常使用 mustache 语法(双花括号)。然而,这在 Vue 中对于 HTML 元素是不允许的。为了使用 HTML 元素,我们必须使用绑定将我们的数据连接到它们。数据绑定有助于将数据绑定到模板,这有助于渲染到视图组件。 Vue 提供了自己的一组指令,用于将我们的数据动态绑定到模板。

文本绑定:当我们需要在 Vue 中绑定任何 HTML 的内容时使用它。使用文本绑定的语法是在任何 HTML 元素中使用v-text指令,并且应该为其分配一个数据属性。例如,



App.vue

  


App.vue

  


App.vue

  

  


App.vue

  


输出:

我们可以使用 v-text 指令将我们的数据(即名称)绑定到 div 标签,以动态地将我们的数据绑定到 HTML,这样当我们将名称更改为其他值时,更改将反映在 HTML 模板中。

HTML Binding:这是一种将一些字符串数据存储为任何 HTML 以在任何 div 标签中使用的方式。所以 div 标签的内容将与我们绑定到它的 HTML 一致。使用 HTML 绑定的语法是使用 v-html 指令并为其指定数据属性。 v-html 指令用于使用我们的数据更新元素的 innerHTML。

示例:在下面的示例中,我们用 标记将字符串括起来。如果我们使用 v-text 绑定名称数据,它将显示输出和标签。但要真正应用 HTML 元素,我们需要 v-html。

应用程序.vue


  

输出:

我们甚至可以使用v-html指令将 HTML 绑定到模板,该指令会将相应的 HTML 标记应用于绑定的数据。我们甚至可以将锚标签绑定到数据上。

属性绑定:用于将属性动态绑定到属性。我们无法在 Vue js 中使用 mustache 语法“{{ }}”绑定属性。要使用我们的数据设置属性的值,我们需要使用 v-bind 指令。属性绑定的语法是使用 v-bind: ,然后是相应的属性。

注意:使用 v-bind: 绑定的属性应该在数据返回语句中声明,否则会抛出错误。

示例:在下面的示例中,我们将 disabled 属性绑定到按钮标签, disabled 指定按钮不可点击且无法使用。我们已将其绑定到isDisabled数据属性,该属性是一个布尔值,设置为 true。因此,我们可以使用属性绑定来禁用提交按钮,直到一个特定的表单被完全填满,并切换数据属性以在完成表单时再次启用它。

应用程序.vue


  

输出:

我们可以使用v-bind 指令绑定HTML 元素的属性,该指令会动态地将属性应用于相应的 HTML 元素。例如,我们可以将 disabled 属性绑定到名为isDisabled的数据以切换按钮的状态。

类绑定:与属性绑定一样,我们可以使用类绑定将用于 CSS 的类绑定到数据值。任何 HTML 标签都可以使用v-bind:class指令指定类名。语法是使用 v-bind: 后跟 class 并将值设置为任何数据变量。我们可以通过添加到一个数组( v-bind:class = ” [ status,provided ] “)来拥有多个类,这会将两个 CSS 类应用于 HTML 标记。通过将类绑定到数据,我们可以根据事件以编程方式更改 UI,例如在单击任何按钮时更改其背景颜色以使 UI 具有交互性。为了有条件类,我们可以有任何布尔值后跟 && 以具有基于某些条件语句设置类的功能。

示例:在下面的示例中,我们有条件地使用isCondition后跟&&设置

标记的类,其中isConditiontrue ,如数据中声明的那样,因此用引号 (promoted) 括起来的类将应用于 < h2> 标签(我们在样式中定义了提升的类)。

注意:类应该在 Vue 文件的样式标签中声明。

应用程序.vue


  

  

输出:

我们可以使用 v-bind 指令为 HTML 动态绑定类,并根据某些函数或事件更改类。条件类也可以使用 && 与布尔数据变量一起使用。

样式绑定:与 CSS 选择器一样,我们可以借助样式绑定为不同的 HTML 元素设置相同的样式,甚至可以在需要时动态更改样式。众所周知,对于样式,我们有 2 个选项,要么具有内联样式,要么在样式标签中定义它们,但我们也可以使用 Styles 绑定将样式链接到我们的数据值。样式绑定的语法是 v-bind: 后跟样式并将样式设置为我们数据部分中的值。对于内联样式,我们可以有不同的数据值并像在普通 HTML 中那样设置它们。样式绑定的主要优点是我们可以以编程方式更改数据,这反过来会更改应用的样式,因为我们可以动态更改任何类或 id 的样式。

示例:在下面的示例中,我们使用与我们的数据相关联的 CSS 属性设置

标记的样式(颜色与值为橙色的 someColor 相关联,与值为 25 的 headerSize 相关联的字体大小)。我们甚至可以创建一个数据对象,其键作为 CSS 属性和值,如

标签所示,我们将样式与 dataStyle 链接起来,而 dataStyle 又是一个具有颜色、字体大小和填充属性的对象。

应用程序.vue


  

输出:

我们还可以使用 v-bind 绑定来应用内联样式,将数据与任何静态值一起动态绑定到我们的样式中,并根据任何函数或算法更改它们。在数据中创建样式对象并将其链接到任何 HTML 元素,以减少为每个元素一次又一次地编写样式。如果我们想将样式分离到不同的数据对象,请通过将它们插入 [ ] 括号或数组来应用多个对象。

从上面我们可以看出,每当我们想要绑定到任何 HTML 属性时,我们都需要使用 v-bind: 来做到这一点(例如v-bind:classv-bind:idv-bind: style ,等),这可能会变得重复使用 v-bind。因此,我们可以只用 : 替换v-bind: 例如:class:style:id等)。