vue.js - 从 vue 的下拉列表中选择选项时填充文本值
问题描述
我有一个vue
应用程序和新的vue
. 我有一个通过axios
endpoint
. 这将返回 2 个项目。我要做的是,如果选择了“APC”,则text
使用我返回的属性值填充一个值,array
但这是我可能想多了的地方。
我的想法是我需要再次迭代这些项目,但如果满足条件则显示该值。
下面是我的整个页面代码
<template>
<div>
<div class="form-group row">
<label class="col-sm-3 col-form-label" for="courierList">Courier <span class="text-danger">*</span></label>
<div class="col-sm-7 shipping-options">
<select id="courierList" class="form-control" v-model="selectedCourier">
<option value='courierDefault'>Please select a courier</option>
<option :value="courier.name.toLowerCase()" v-for="(courier, index) in couriers" :key="courier.index">
{{ courier.name }}
</option>
</select>
</div>
</div>
<span v-if="selectedCourier != 'courierDefault'">
<div class="form-group row">
<b class="col-sm-3" for="cutOff">Order cut-off</b>
<div class="col-sm-7 shipping-options" v-for="(cutOff, index) in couriers" :key="cutOff.index">
{{ cutOff.cut_off }}
</div>
</div>
</span>
</div>
</template>
<script>
export default {
name: 'CourierSelect',
data() {
return {
couriers: [],
selectedCourier: 'courierDefault'
}
},
mounted() {
this.fetchCouriers();
},
methods: {
fetchCouriers() {
axios.get('/CHANGED_FOR_SECURITY')
.then((response) => {
this.couriers = response.data.couriers;
console.log('axios_couriers', this.couriers)
})
.catch((error) => {
VueEvent.$emit('show-error-modal', 'cartFethchCouriers');
console.log(error);
});
}
}
}
</script>
我console.log
的'axios_couriers'给
然后,当我选择“APC”时,我的页面显示为
但我需要的是Array
object
仅显示“APC”的“cut_off”值(显示在控制台屏幕截图中)。该值应为 16:30
有没有办法把它作为Computed
道具或其他东西?
解决方案
正如您所建议的那样computed
,确实应该有效。一种方法是:
currentCutOff() {
return this.couriers.find(c => c.name == this.selectedCourier).cut_off;
}
这会尝试从您的数组中找到与当前选择的Courier 名称相同的信使。
推荐阅读
- powershell - 使用 PS 脚本导出和导入包含 CSV 文件的文件夹结构和绑定
- vba - 将单元格中的前 2 个字符更改为整数(使用循环(VBA))
- ansible - ansible 在加载 YAML 时出现语法错误。没有找到预期的密钥
- visual-studio - 带 * 的 AssemblyVersion 只生成“0.0”
- angular - 如何为 @Inject(DOCUMENT) 文档创建单元测试:Angular 中的文档
- java - 如何使用 @PathVariable 参数映射 ResponseEntity<> getByName 方法?
- javascript - 为什么这个 for 循环不起作用并且我的变量为零?
- javascript - 客户端与服务器端的视频编码
- vue.js - Vuetify:天:小时:分钟的v-text-field?
- python - PMU RAW文件的IEEE C37.118 python解析器