javascript - vue动态表单
问题描述
我有一个动态表单,用户可以输入一个项目,所需的数量和每个项目的成本,如下所示:
<form @submit.prevent="submit">
<div class="form-group" v-for="(input,k) in inputs" :key="k">
<input type="text" class="form-control" v-model="input.item">
<input type="text" class="form-control" v-model="input.quantity">
<input type="text" class="form-control" v-model="input.cost">
<span>
<i class="fas fa-minus-circle" @click="remove(k)" v-show="k || ( !k && inputs.length > 1)">Remove</i>
<i class="fas fa-plus-circle" @click="add(k)" v-show="k == inputs.length-1">Add fields</i>
</span>
</div>
<button>Submit</button>
</form>
我想计算所有添加项目的总成本。我试过了
export default {
methods: {
totalCost: function () {
for (let i = 0; i < this.inputs.length; i++) {
return this.inputs[i].cost*this.inputs[i].quantity
}
}
}
}
但这只是给了我第一项的总成本。如何获取用户输入的所有项目的总成本?
解决方案
-loop 中的return
语句for
导致它在计算第一个项目的成本后立即返回。
一个快速的解决方法是删除它return
,并使用局部变量累积总和:
let total = 0
for (let i = 0; i < this.inputs.length; i++){
total += this.inputs[i].cost * this.inputs[i].quantity
}
return total
推荐阅读
- javascript - 如何从 JavaScript 中的其他方法/函数获取值
- ms-access - MS Access 使用带有组合框的 Macro Builder 中的 ApplyFilter 显示输入参数框
- javascript - Textarea动态高度调整大小滚动问题
- javascript - 如何使用 ng2-pdf-viewer 和 cdk 拖动将元素拖动到 pdf 并粘贴元素?
- aem - 无法将图标添加到 aem 中的新自定义 RTE 插件
- python - 从 Tkinter 保存后无法打开 Excel 文件
- kendo-ui - 有没有办法在 Kendo Grid 中像这样编辑单个单元格?
- regex - Splunk rex 表达式以删除 json 文件中存在的逗号
- java - Firebase Android(Java)无需登录即可创建新帐户
- php - codeigniter base_url 未在 XAMPP 中更新