问题标签 [v-model]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - v-model 将动态添加的输入字段设置为 undefined
要求用户添加列,给出与新列相关的名称和其他信息。我当前的问题是我可以看到添加到数组中的新列,但它们是未定义的。不确定我是否遗漏了什么或者我绑定的方式不正确..
看法:
VUE 代码:
使用我目前拥有的 - 每次我添加一个新列时,我都会看到它添加到数组中,但添加的项目是未定义的,所以我的列数组的大小为 2 和 [0:undefined, 1:undefined]
vue.js - 如何将计算用于对象属性?
我想从要计算的对象中获取属性,但据我所知,这不受支持。
我试过使用类似的东西,objects.atributes:{ /*codes */ }
但有错误。
我想实现这样的目标:
我希望全名会出现,但它没有。
vue.js - 无需额外数组即可动态绑定 v-model
我正在尝试使用 v-for 和模板创建多个 vuetify-textfields,因此我可以轻松地添加和编辑文本字段,同时保持我的代码干净。
模板标签:
我当前的数据如下所示:
我知道这个问题被问过多次,但每个答案都是:动态绑定 v-model 通过创建一个额外的数组来工作,你可以在其中保护你的数据(在我的示例中为姓名和姓氏)。
但这感觉像是一个笨拙的解决方法。那么有什么办法可以直接将 v-model 绑定到 this.name/this.lastname 上呢?
javascript - VueJS v-model for object prop 通过嵌套组件不会按预期更新它们
我正在开发一个申请表。它的组件树:
Application 组件具有用于调用 Form 组件的配置道具,formSettings
以便它传递它们:
接下来,我需要将 FormData 与 Fieldsets 同步。
重要的是,在我的情况下,所有要同步的值都具有对象类型!
为了实现它,首先,我决定form
在 created 钩子中将 fieldset 配置属性深度克隆到 Form 的内部属性,称为 ,并为每个属性添加一个特殊属性,称为value
,它存储字段集字段的所有值:
因此,表单的模板使用此克隆呈现:
接下来,我需要将 Fieldsets 值与它们的 Fields 同步。我尝试了一种类似 Form 组件的方法——创建一个内部可变属性,存储组件配置道具的克隆及其值。使用它不会按预期更新嵌套组件,并且当我尝试更改 中的某些字段值时form.fieldsets
,它不会更改子组件中的任何内容,因此我拒绝了这种方法。我使用的另一种方法是在 Fieldset 组件中定义一个计算属性:
然后 - 使用 v-model :
但它也不会更新 Fields 组件。
我该怎么做才能使对象的嵌套 v-model 正常工作?
javascript - 将 v-model 与对象一起使用是否不好,尤其是通过 VueJS 中的几个嵌套组件?
我在使用 v-model 时遇到了一个大问题,其中一个对象通过了 2 层嵌套组件。我在这里描述了这个问题VueJS v-model for object prop through nested components does not make update them as expected。但现在我想知道,也许这种方法很糟糕,有一些原因吗?
javascript - 如何在 `$emit('input')` 完成更新之前修改 VueJS 中的 'value' 属性
我有一个关于创建可使用的 VueJS 组件的问题,这些组件v-model
利用底层的value
prop 和$emit('input', newVal)
.
在上面的代码示例中,如果我快速连续进行两次修改,它们都将在“旧数组”(未修改的value
道具)上执行。
换句话说,我需要等待value
通过 更新$emit('input')
,以便第二次调用moveIdToIndex
使用已修改的数组。
错误的解决方案 1
一种解决方法是更改updateArray
为:
并像这样执行:
但我不想这样做,因为我需要对一组 Id 执行此操作,并同时将它们全部移动到不同的位置。而await
ing 会大大降低性能。
错误的解决方案 2
我发现一个更好的解决方案就是这样做:
然后我根本不需要等待$emit
完成。
然而,在这种情况下,VueJS 给出了一个控制台错误:
避免直接改变 prop,因为只要父组件重新渲染,该值就会被覆盖。相反,使用基于道具值的数据或计算属性。道具被变异:“价值”
有没有人有更好的解决方案?
vue.js - v-model inside a renderless component
CodeSandbox: https://codesandbox.io/s/61my3w7xrw?fontsize=14
I have this renderless component that uses a scoped slot:
Using it like so:
... so the value is not updated on change. What am I doing wrong?
javascript - 未选中时,具有对象作为绑定到数组属性的值的 VueJS 复选框不会脱离数组
在我的一个 VueJS 组件中,我有一个名为 的数组selectedJobs
,用于在 html 表中选中 html 复选框。replenJobsList
html 表中的数据来自一个名为;的对象数组。
如果我console.log(selectedJobs.length);
选中所有复选框,它会给我正确的长度。但是当我取消选中一个复选框并再次检查数组的长度时,复选框长度不会减 1。
此外,如果我再次选中同一个复选框,它将向selectedJobs
数组中添加一个对象,而不是再次递减和递增。
如何让复选框正确添加和脱离selectedJobs
阵列?
javascript - 如何在 Vue 中为 v-model 使用多维数组?
我想根据用户检查的属性值为在线商店生成属性变体。
问题是我不知道如何从 v-model 访问属性值以及 v-model 必须是什么类型的数据?
我被困在这里。下面是我的代码。
谢谢!
vue.js - 在用户点击 vuejs 时更新发送到子组件的值
我在 mu app.vue 中有两个组件,我会在页面加载时将数据从 app.vue 发送到我的第一个组件(过滤器组件)。
现在基于第二个组件中显示数据中的用户操作,我需要将新值传递回第一个组件。
我正在使用 a 和 a 。考虑我在第一个组件中收到的一个道具是“nselectedOption”,我在数据中执行此操作:{ return { selectedOption: this.nselectedOption }} 以避免突变警告。
现在,每次我从第二个组件更新此组件的值时,我只看到“nselectedOption”而不是“selectedOption”中的变化。你能解释这是为什么吗?
我需要将更新后的值转换为 . 1. 如果我使用“nselectedOption”,它会更新文本框,但在编辑值时会引发错误。2. 如果我使用“selectedOption”,它不会更新文本框本身的值。
我什至尝试使用计算值来返回值,它可以工作,但是如果我尝试更改过滤器组件中其他选项中的值,则已更新的值显示 null 或什么都没有。
请帮我。这个问题是否可以使用状态管理概念来解决,或者我是否必须拥有除 App.Vue 之外的单独组件来完成所有这些工作,以便它充当父/子之类的事情,或者是否有其他方法可以克服这个问题。