【发布时间】:2020-03-21 11:40:27
【问题描述】:
我在输入框上使用v-model,我想使用数字进行绑定,但它似乎不起作用。当我使用输入框时发生的事情是将项目保存为字符串,我知道这是因为当我执行myModel += 25 时,而不是100 转到125,它转到10025。
有没有办法让输入绑定为数字?
这是我的输入元素的样子:
<input type="text" list="zoom-amount" v-model="project.zoom" />
<datalist id="zoom-amount">
<option>25</option>
<option>50</option>
<option>100</option>
<option>150</option>
<option>200</option>
</datalist>
@Component
export default class WorkspaceStatusBar extends Vue {
@Provide() public project: Project = this.activeProject
public get activeProject() {
return this.$store.getters['project/getActiveProject']
}
@Watch('activeProject')
public onActiveProjectChanged(newProject: Project) {
this.project = newProject
}
}
【问题讨论】:
-
<input type="number" list="zoom-amount" v-model="project.zoom">? -
使用
type="number"似乎在做同样的事情。 -
是的,刚刚测试过了。抱歉,应该在评论之前这样做
-
其实……我收回那句话……现在似乎可以工作了……
-
哇,真的吗?在我的测试中,它 a) 仍然是一个字符串,并且 b) 没有使用数据列表
标签: javascript typescript vue.js