? v模型怎么在Vue项目中使用

  介绍

v模型怎么在Vue项目中使用?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

什么是v模型?

v模型告诉Vue我们想要在模板中的值和数据属性中的值之间创建一个双向数据绑定。

使用v模型的一个常见用例是在设计形式和输入时。我们可以使用它使DOM输入元素能够修改Vue实例中的数据。

让我们看一个在文本输入上使用v模型的简单示例。

& lt; template>   ,& lt; div>   & lt;才能input    ,,type=& # 39;文本# 39;   ,,v模型=& # 39;价值# 39;/才能比;   & lt;才能p>,值:,{{,value }}, & lt;/p>   ,& lt;/div>   & lt;/template>      & lt; script>   export  default  {   ,数据(){   return {才能   ,,,的值:& # 39;Hello  & # 39;,   ,,}   ,}   }   & lt;/script>

当我们在文本输入中输入时,我们会看到我们的数据属性发生了变化。

v模型和v-bind的区别吗?

v-bind指令通常会与v模型切换。

两者的区别在于v模型提供了双向数据绑定。

在我们的例子中,这意味着如果我们的数据改变了,我们的输入也会改变,如果我们的输入改变了,我们的数据也会改变。

然而,v-bind只以一种方式绑定数据。

当你在你的应用中创建一个清晰的单向数据流时,这是非常有用的。但是,在v模型和v-bind之间选择时必须小心。

v模型的修饰符

Vue提供了两个修饰符,允许我们更改v模型的功能。

每一个都可以像这样加起来,甚至可以连接在一起。

& lt; input    ,type=& # 39;文本# 39;   ,v-model.trim.lazy=& # 39;价值# 39;/在

.lazy

默认情况下,v模型在每个输入事件上与Vue实例(数据属性)的状态同步。这包括得到,失去焦点等等。

懒修饰符修改了我们的v模型,所以它只在更改事件之后同步。

这减少了v模型试图与Vue实例同步的次数——在某些情况下,还可以提高性能。

.number

通常,我们的输入将自动将输入转为字符串——即使我们将输入是数字。

确保将值作为数字处理的一种方法是使用。数字修饰符。

根据Vue文档,如果输入发生变化,并且parseFloat()无法解析新值,那么将返回输入的最后一个有效值。

& lt; input    ,type=& # 39;数字# 39;   ,v-model.number=& # 39;价值# 39;/在

.trim

与大多数编程语言中修剪的方法类似,。修剪修饰符在返回值之前删除开头或结尾的空白。

在自定义组件中使用v模型

好了,现在我们已经了解了表单/输入内部的v模型的基本知识,让我们看看v模型的一个有趣用法——在组件之间创建双向数据绑定。

在Vue中,数据绑定有两个主要步骤:

从父节点传递数据

从子组件发出事件以更新父组件

在自定义组件上使用v模型可以让我们传递一个道具,用一个指令来处理一个事件。

& lt; custom-text-input  v模型=皏alue",/比;   & lt; !——, IS 从而SAME  AS ——比;   & lt; custom-text-input    :modelValue=https://www.yisu.com/zixun/才能“价值”   @update: modelValue=" value=$事件”/>

好吧,这到底是什么意思?

让我们继续使用v模型表单的例子,并使用名为CustomTextInput。vue的自定义文本输入。

使用v模型传递的值的默认名称是modelValue——我们将在示例中使用这个名称。

但是,我们可以像这样传递一个定制的模型名称。

& lt; custom-text-input  v模型:name=皏alue",/在

注意:当我们使用自定义模型名称时,所发出方法的名称将被更新:名称

下面是来自vue文档的一张图来总结它。

 ? v模型怎么在vue项目中使用“> </p> <h3>使用自定义组件中的v模型</h3> <p>我们已经设置好了父组件,所以让我们从子组件访问它。</p> <p>在CustomTextInput。vue中,我们必须做两件事:</p> <ul类= <李>

接受我们的v模型值作为道具

<李>

当我们的输入发生变化时,触发一个更新事件

好的——让我们首先在脚本中声明它是道具。

export  default  {   ,道具:{   ,,modelValue:字符串,   ,}   }

? v模型怎么在Vue项目中使用