javascript - 通过单击 Vuejs 中的另一个按钮来更改下拉显示文本
问题描述
我有一个下拉列表:
<BaseDropdown
@input="value => statusSelected(value)"
name="Status"
ref="status"
label="Status:"
rules="required"
:options="statusItems"
v-model="status"
value="status"
placeholder="Please select a status"
/>
还有一个按钮:
<button class="edit" @click="editComment(status)">Edit </button>
status 参数的值为"note"
。我有这个功能:
editComment(status){
this.status = status
}
它将 v-model 的值更改为,"note"
因为我可以在日志中看到它,但下拉列表的显示文本没有改变。我应该怎么做才能更改下拉文本的显示值?
解决方案
查看 BaseDropdown 组件或截屏以可视化您的意思会很有帮助。没有足够的信息来查看该组件在做什么。
我看到的是您将需要另一个变量和一个计算属性。status
和editStatus
。
computed:{
displayStatus(){
return this.editStatus || this.status;
}
},
methods: {
editComment(status){
this.editStatus = status
}
}
<BaseDropdown
@input="value => statusSelected(value)"
name="Status"
ref="status"
label="Status:"
rules="required"
:options="statusItems"
v-model="status"
value="displayStatus"
placeholder="Please select a status"
/>
这只是一个猜测,因为我无法看到所有细节。
推荐阅读
- methods - 使用在 Stream 中返回 Int 的方法
- javascript - HTML5, JS: 用 cam 拍照并保存
- kubernetes - 具有两个副本的 Kubernetes 部署:一个 pod 正在运行,另一个失败
- r - 如何在 R 中创建两个高度不等(不同的最大值)但在 Y 轴上具有相同单位的条形图?
- vb.net - 图片框断断续续
- javascript - highcharts 渲染气泡系列
- php - phpmyadmin - 缺少 mbstring 扩展名
- angular - 如何在不单击或触摸Angular的情况下从父组件验证子组件
- sql - 按类型划分的每月余额
- networking - 自动 IP 地址范围