Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js与v-model的双向数据绑定_Vue.js - Fatal编程技术网

Vue.js与v-model的双向数据绑定

Vue.js与v-model的双向数据绑定,vue.js,Vue.js,我一直在阅读有关v-model的文章,但到目前为止,这些教程一直令人困惑,并没有真正回答我的问题:如何使用v-model实现双向数据绑定 我需要将数据变量绑定到子组件,并且能够从父端和子端更改变量的值。我需要在子组件中放入什么代码,以便在这样做时,可以从两侧更新var 为此,我希望避免使用存储模式,因为它只是需要共享数据的两个组件。v-model只是单向数据流之上的抽象。基本上,您的自定义子组件需要做两件事: 接受名为value的prop。 使用新数据发出名为input的事件。 因此,您的子组件

我一直在阅读有关v-model的文章,但到目前为止,这些教程一直令人困惑,并没有真正回答我的问题:如何使用v-model实现双向数据绑定

我需要将数据变量绑定到子组件,并且能够从父端和子端更改变量的值。我需要在子组件中放入什么代码,以便在这样做时,可以从两侧更新var

为此,我希望避免使用存储模式,因为它只是需要共享数据的两个组件。

v-model只是单向数据流之上的抽象。基本上,您的自定义子组件需要做两件事:

接受名为value的prop。 使用新数据发出名为input的事件。 因此,您的子组件将按如下方式使用:

<child-component :value="myVal" @input="myVal = $event"></child-component>
此外,如果出于某种原因,您不想将值或输入用作道具和事件,则可以使用“模型”属性更改它们。这是你的电话号码

请注意,如果您使用的是Redux/Vuex,请避免使用v-model。对于嵌套数据,您很有可能会遇到边缘情况。

v-model只是单向数据流之上的抽象。基本上,您的自定义子组件需要做两件事:

接受名为value的prop。 使用新数据发出名为input的事件。 因此,您的子组件将按如下方式使用:

<child-component :value="myVal" @input="myVal = $event"></child-component>
此外,如果出于某种原因,您不想将值或输入用作道具和事件,则可以使用“模型”属性更改它们。这是你的电话号码

请注意,如果您使用的是Redux/Vuex,请避免使用v-model。对于嵌套数据,您很有可能在边缘情况下遇到问题。

不可能使用v-model进行双向数据绑定,因为您希望在更改子组件中的输入时修改默认行为

您希望使用v-bind显示值,并使用v-on:input将数据传递回父组件

例如,见

第一行只是一个只读文本。选择下拉列表是父端数据变量,文本框来自子组件

基本上,您希望数据保存在父端,并使用道具将数据传递到子组件中。在子组件中,您希望将输入事件传递回父组件,以便使用$emit进行处理

使用父下拉列表更改值将更新该值。在子组件的文本输入中更改值也会导致错误。如果键入1、2或3,则父选择下拉列表也将相应更新。

无法使用v-model进行双向数据绑定,因为您希望在更改子组件中的输入时修改默认行为

您希望使用v-bind显示值,并使用v-on:input将数据传递回父组件

例如,见

第一行只是一个只读文本。选择下拉列表是父端数据变量,文本框来自子组件

基本上,您希望数据保存在父端,并使用道具将数据传递到子组件中。在子组件中,您希望将输入事件传递回父组件,以便使用$emit进行处理


使用父下拉列表更改值将更新该值。在子组件的文本输入中更改值也会导致错误。如果您键入一、二或三,则父选择下拉列表也将相应更新。

出于您的目的,您可以使用.sync修饰符。
出于您的目的,您可以使用.sync修饰符。

你有没有举个例子?上面的解释可能多次提到,但我还没有看到将上述概念付诸实施的示例,例如,在父级和子级中修改相同的数组。我认为这应该会有所帮助:@tyteen4a03,对于数组,确保不要使用push/splice/shift等可变方法。使用concat等不变方法,切片并始终从子组件发出新数组。您有示例吗?上面的解释可能多次提到,但我还没有看到将上述概念付诸实施的示例,例如,在父级和子级中修改相同的数组。我认为这应该会有所帮助:@tyteen4a03,对于数组,确保不要使用push/splice/shift等可变方法。使用concat等不变方法,切片并始终从子组件发出新数组。