Javascript 如何更新vue.js v-data-table并使用新文本更新列值
Vue新手,我有一个v-data-table,其中有一列我希望是可更新的,但不知道如何更新! 我可以传递任何/所有属性值,但似乎不知道在用户更改时如何传递更新的文本 当我有多行包含此列时,如何获得该值?我可以为一个字段执行此操作,但这是在一个包含多行的表中 这是专栏Javascript 如何更新vue.js v-data-table并使用新文本更新列值,javascript,html,vue.js,vuetify.js,Javascript,Html,Vue.js,Vuetify.js,Vue新手,我有一个v-data-table,其中有一列我希望是可更新的,但不知道如何更新! 我可以传递任何/所有属性值,但似乎不知道在用户更改时如何传递更新的文本 当我有多行包含此列时,如何获得该值?我可以为一个字段执行此操作,但这是在一个包含多行的表中 这是专栏 尝试(取决于来源) 或 还可以删除您的v-model,并将其替换为绑定以设置值 :value='props.item.productAnnotation' $event包含与发出的消息输入一起发送的数据 v-model将通过将
尝试(取决于来源)
或
还可以删除您的v-model,并将其替换为绑定以设置值
:value='props.item.productAnnotation'
$event
包含与发出的消息输入一起发送的数据
v-model
将通过将值指定给数据属性来为您处理此问题。v-model只是将:value
和@input
连接到一个公共属性的糖,并处理一些额外的边缘情况
简而言之,v-model
创建一个v-bind:value
并将其绑定数据的更改发送到子组件的value
属性。然后,它创建@input
,并侦听要发出的事件。收到后,它会更新属性。这样做是为了让父级可以拥有数据。子级无法更新属性,因此必须为父级发出事件以更改属性。尽管看起来很奇怪,但它创建了一个非常干净的体系结构,只有所有者才能更新值。这是Vue的核心租户之一。您已经拥有了它。它由v-model
绑定。它位于this.item.annotation
中。它显示$event.target.value未定义,但$event传递新文本。它取决于发射源。我将更新解决方案。您知道为什么在控制台中添加/删除此字段中的字符时出现错误吗?错误消息显示“v-on处理程序中的错误:”TypeError:无法分配给对象“#”的只读属性“productAnnotation”“”请尝试@input=“event=>inputanotation(event,props.item.id)”
,并告诉我们这是否解决了您的问题。我甚至不知道productAnnotation
是在哪里定义的……您现在已经用:value和@input替换了v-model。。。我更新了解决方案,再次。。。
@input="inputAnnotation($event, props.item.id)"
:value='props.item.productAnnotation'